CodeQL library for C/C++
codeql/cpp-all 1.1.2-dev (changelog, source)

Member predicate Decltype::parenthesesWouldChangeMeaning

Whether an extra pair of parentheses around the expression would change the semantics of this decltype.

The following example shows the effect of an extra pair of parentheses:

struct A { double x; };
const A* a = new A();
decltype( a->x ); // type is double
decltype((a->x)); // type is const double&

Please consult the C++11 standard for more details.

predicate parenthesesWouldChangeMeaning()