Nous utilisons des cookies pour améliorer votre expérience de navigation. En savoir plus
Accepter
to the top

Webinar: Let's make a programming language. Part 1. Intro - 20.02

>
>
>
V1030. Variable is used after it is...
menu mobile close menu
Additional information
toggle menu Contents

V1030. Variable is used after it is moved.

31 Aoû 2018

The analyzer has detected a variable that is being used after a move operation.

std::string s1;
std::string s2;
....
s2 = std::move(s1);
return s1.size();

When moved, a variable is existing in an unspecified yet valid state, which still allows calling the destructor on it. Assuming that objects in your programs are in this state is unsafe, except for a number of classes such as 'std::unique_ptr' whose behavior is well-defined.

This diagnostic is classified as:

  • CERT-EXP63-CPP