The analyzer found a potential error related to storing a pointer of a local variable. The warning is generated if the lifetime of an object is less than that of the pointer referring to it.
The first example:
class MyClass { size_t *m_p; void Foo() { size_t localVar; ... m_p = &localVar; } };
In this case, the address of the local variable is saved inside the class into the m_p variable and can be then used by mistake in a different function when the localVar variable is destructed.
The second example:
void Get(float **x) { float f; ... *x = &f; }
The Get() function will return the pointer to the local variable that will not exist by the moment.
This message is similar to V507 message.
This diagnostic is classified as:
|
You can look at examples of errors detected by the V506 diagnostic. |