Compilerwarnung (Ebene 1) C4042
'Identifier': hat eine ungültige Speicherklasse.
Die angegebene Speicherklasse kann in diesem Kontext nicht mit diesem Bezeichner verwendet werden. Der Compiler verwendet stattdessen die Standardspeicherklasse:
extern
, wenn der Bezeichner eine Funktion ist.auto
, wenn der Bezeichner ein formaler Parameter oder eine lokale Variable ist.Keine Speicherklasse, wenn der Bezeichner eine globale Variable ist.
Diese Warnung kann durch Angabe einer anderen Speicherklasse als register
in einer Parameterdeklaration verursacht werden.
Im folgenden Beispiel wird C4042 generiert.
// C4042.cpp
// compile with: /W1 /LD
int func2( __declspec( thread ) int tls_i ) // C4042
// try the following line instead
// int func2( int tls_i )
{
return tls_i;
}