13.07.2015 Views

TASKING VX-toolset for ARM User Guide

TASKING VX-toolset for ARM User Guide

TASKING VX-toolset for ARM User Guide

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

C++ LanguageS s; // OK.S s2; // Instantiation error due to failing static_assert.• The friend class syntax is extended to allow nonclass types as well as class types expressed througha typedef or without an elaborated type name. For example:typedef struct S ST;class C {friend S; // OK (requires S to be in scope).friend ST; // OK (same as "friend S;").friend int; // OK (no effect).friend S const; // Error: cv-qualifiers cannot// appear directly.};• Mixed string literal concatenations are accepted (a feature carried over from C99):wchar_t *str = "a" L"b"; // OK, same as L"ab".• Variadic macros and empty macro arguments are accepted, as in C99.• In function bodies, the reserved identifier __func__ refers to a predefined array containing a stringrepresenting the function's name (a feature carried over from C99).• A trailing comma in the definition of an enumeration type is silently accepted (a feature carried overfrom C99):enum E { e, };• If the command line option --long-long is specified, the type long long is accepted. Unsuffixed integerliterals that cannot be represented by type long, but could potentially be represented by type unsignedlong, have type long long instead (this matches C99, but not the treatment of the long longextension in C89 or default C++ mode).• An explicit instantiation directive may be prefixed with the extern keyword to suppress the instantiationof the specified entity.• The keyword typename followed by a qualified-id can appear outside a template declaration.struct S { struct N {}; };typename S::N *p; // Silently accepted// in C++0x mode• The keyword auto can be used as a type specifier in the declaration of a variable or reference. In suchcases, the actual type is deduced from the associated initializer. This feature can be used <strong>for</strong> variabledeclarations, <strong>for</strong> inclass declarations of static const members, and <strong>for</strong> new-expressions.41

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!