Microsoft C/C++-Compilerwarnungen C5200 bis C5399

Die Artikel in diesem Abschnitt beschreiben Microsoft C/C++-Compilerwarnungen C5200 bis C5399.

Wichtig

Die Visual Studio-Compiler und -Buildtools können vielen Arten von Fehlern und Warnungen generieren. Nachdem ein Fehler oder eine Warnung erkannt wurde, können die Buildtools Annahmen über den beabsichtigten Zweck des Codes machen, und sie versuchen, den Code weiterhin auszuführen, sodass mehrere Probleme gleichzeitig gemeldet werden können. Wenn die Tools allerdings von falschen Annahmen ausgehen, sind spätere Fehler oder Warnungen möglicherweise nicht auf das Projekt anwendbar. Wenn Sie Probleme im Projekt beheben, sollten Sie immer mit dem ersten gemeldeten Problem (Fehler oder Warnung) beginnen, und häufig einen Rebuild für das Projekt ausführen. Durch eine Fehlerbehebung können möglicherweise viele nachfolgende Fehler behoben werden.

Um Hilfe zu einer bestimmten Diagnosenachricht in Visual Studio zu erhalten, wählen Sie sie im Fenster Ausgabe aus, und drücken Sie die Taste F1. Visual Studio öffnet die Dokumentationsseite für diesen Fehler, sofern vorhanden. Sie können auch das Suchtool oben auf der Seite verwenden, um Artikel zu bestimmten Fehlern oder Warnungen zu finden. Oder durchsuchen Sie die Liste der Fehler und Warnungen nach Tool und Typ im Inhaltsverzeichnis auf dieser Seite.

Hinweis

Nicht jeder Visual Studio-Fehler oder jede Warnung ist dokumentiert. In vielen Fällen sind bereits alle verfügbaren Informationen in der Fehlermeldung enthalten. Wenn Sie diese Seite erreicht haben, nachdem Sie F1 gedrückt haben, und der Ansicht sind, dass die Fehlermeldung oder Warnmeldung zusätzliche Erläuterungen benötigt, teilen Sie uns dies mit. Mithilfe der Feedbackschaltflächen auf dieser Seite können Sie ein Dokumentationsproblem auf GitHub melden. Wenn Sie glauben, dass der Fehler oder die Warnung falsch ist oder Sie ein weiteres Problem mit dem Toolset gefunden haben, melden Sie ein Produktproblem auf der Developer Community-Website. Sie können auch innerhalb der IDE Feedback senden und Fehler eingeben. Wechseln Sie in Visual Studio zur Menüleiste, und wählen Sie Hilfe > Feedback senden > Ein Problem melden aus, oder senden Sie einen Vorschlag über Hilfe > Feedback senden > Vorschlag senden.

In Microsoft Learn Q&A-Foren finden Sie möglicherweise zusätzliche Unterstützung für Fehler und Warnungen. Oder suchen Sie auf der Website der Visual Studio C++-Developer Community nach der Fehler- oder Warnungsnummer. Sie können auch Stack Overflow nach Lösungen durchsuchen.

Links zu zusätzlichen Hilfe- und Communityressourcen finden Sie in der Hilfe und Community für Visual C++.

Warnmeldungen

Warnung `Message`
Compilerwarnung (Stufe 1) C5200 Das Feature „feature-name“ erfordert das Compiler-Flag „option-name“
Compilerwarnung (Stufe 1) C5201 Eine Moduldeklaration kann nur am Anfang einer Übersetzungseinheit vorkommen, wenn kein globales Modulfragment verwendet wird.
Compilerwarnung (Stufe 1) C5202 Ein globales Modulfragment darf nur Präprozessoranweisungen enthalten.
Compilerwarnung (Stufe 1) C5203 Ein in Klammern gesetzter Deklaratorname nach „explicit“ wird in C++20 als explicit-Spezifizierer betrachtet.
Compilerwarnung (Stufe 3, deaktiviert) C5204 „type-name“: Die Klasse besitzt virtuelle Funktionen, aber der zugehörige triviale Destruktor ist nicht virtuell; Instanzen von Objekten, die von dieser Klasse abgeleitet werden, werden möglicherweise nicht korrekt zerstört.
Compilerwarnung (Stufe 4) C5205 Das Löschen einer abstrakten Klasse „type-name“ mit einem nicht virtuellen Destruktor führt zu einem nicht definierten Verhalten.
Compilerwarnung (Stufe 3) C5206 Abgeleitete Rückgabetypen für Coroutinen sind keine Standarderweiterung.
Compilerwarnung (Stufe 1) C5207 die einfache Anforderung bestätigt die Gültigkeit des Ausdrucks „e->id“. Meinten Sie „{ e } -> id“? Sie können die Warnung mithilfe von „{ e->id }“ unterdrücken.
Compilerwarnung (Stufe 1) C5208 Eine unbenannte Klasse, die im typedef-Namen verwendet wird, kann keine anderen Member als nicht statische Datenmember, Memberenumerationen oder Memberklassen deklarieren.
Compilerwarnung (Stufe 1) C5209 Die C++20-Syntax für „init-capture“ wurde in „& …opt identifier initializer“ geändert.
Compilerwarnung (Stufe 1) C5210 name“ ist kein gültiger Verweis auf eine Headereinheit und wird ignoriert.
Compilerwarnung (Stufe 1) C5212 name“ ist kein gültiger benannter Verweis und wird als Verweis auf eine Datei behandelt.
Compilerwarnung (Stufe 1) C5213 Der benannte Verweis „name“ wird als benannte Partition behandelt, aber der Name wurde nicht angegeben. Er wird als Dateiverweis behandelt.
Compilerwarnung (Stufe 4, deaktiviert) C5214 Das Anwenden von „modifier“ auf einen Operanden mit qualifiziertem Typ „volatile“ ist in C++20 veraltet.
Compilerwarnung (Stufe 4, deaktiviert) C5215 name“ für einen Funktionsparameter mit qualifiziertem Typ „volatile“ ist in C++20 veraltet.
Compilerwarnung (Stufe 4, deaktiviert) C5216 name“ für einen qualifizierten Rückgabetyp „volatile“ ist in C++20 veraltet.
Compilerwarnung (Stufe 4, deaktiviert) C5217 Eine strukturierte Bindungsdeklaration mit „volatile“ ist in C++20 veraltet.
Compilerwarnung (Stufe 1) C5218 „delete“ mit Zerstörung kann bei Verwendung der nicht konformen Schalter „/Zc:sizedDealloc-“ oder „/Zc:alignedNew-“ zu einem unerwarteten Verhalten führen.
Compilerwarnung (Stufe 2, deaktiviert) C5219 implizite Konvertierung von „type-1“ in „type-2“, mögliche Datenverluste
Compilerwarnung (Stufe 4, deaktiviert) C5220 name“: Ein nicht statischer Datenmember mit dem qualifizierten Typ „volatile“ impliziert nicht länger, dass vom Compiler generierte copy/move-Konstruktoren und Kopieren/Verschieben-Zuweisungsoperatoren nicht trivial sind.
Compilerwarnung (Stufe 1) C5221 xfg::rename ist veraltet.
Compilerwarnung (Stufe 3) C5222 attribute-name“: Alle nicht bereichsbezogenen Attributnamen sind für die zukünftige Standardisierung reserviert.
Compilerwarnung (Stufe 3) C5223 Alle Attributnamen im Attributnamespace „msvc“ sind für die Implementierung reserviert.
Compilerwarnung (Stufe 3) C5224 Alle Attributnamen im Attributnamespace „namespace-name“ sind für die zukünftige Standardisierung reserviert.
Compilerwarnung (Stufe 1) C5225 symbol“: Die in einem privaten Modulfragment definierte exportierte Inlinefunktion ist keine Standarderweiterung.
Compilerwarnung (Stufe 1) C5226 symbol“: Die in einem privaten Modulfragment definierte exportierte Vorlage weist keine erreichbare Instanziierung auf.
Compilerwarnung (Stufe 4) C5227 Nicht dem Standard entsprechende Erweiterung. „symbol“ wurde in „value“ aufgelöst. Dies ist bei Aktivierung von /permissive- nicht sichtbar.
Compilerwarnung (Stufe 4) C5228 Nicht standardmäßige Erweiterung, „identifier“ wurde in ein Element einer abhängigen Basis aufgelöst. Dieser Lookup-Vorgang ist unter /permissive- nicht zulässig.
Compilerwarnung (Stufe 4) C5229 Nicht dem Standard entsprechende Erweiterung. Die Hidden Friend-Funktion „function-name“ wurde durch eine Namenssuche gefunden, die unter /permissive- nicht zulässig ist.
Compilerwarnung C5230 Nicht dem Standard entsprechende Erweiterung „identifier“ wurde zu „symbol-1“ unter /permissive aufgelöst. Unter /permissive- würde es zu „symbol-2“ aufgelöst.
Compilerwarnung (Stufe 3) C5231 Der Ausdruck „co_await promise.final_suspend()“ muss nicht ausgelöst werden.
Compilerwarnung (Stufe 1) C5232 In C++20 ruft dieser Vergleich rekursiv „name“ auf.
Compilerwarnung (Stufe 4, deaktiviert) C5233 Die explizite Lambdaerfassung „identifier“ wird nicht verwendet.
Compilerwarnung (Stufe 1) C5234 Dateisystemfehler: „filename“ ist kein gültiger Headername und wird ignoriert.
Compilerwarnung (Stufe 1) C5235 JSON-Analysefehler:message; „filename“ wird ignoriert.
Compilerwarnung (Stufe 1) C5236 JSON falsch formatiert: message; „filename“ wird ignoriert.
Compilerwarnung (Stufe 1) C5237 Der Headereinheitseintrag „name“ kann nicht in eine Headerdatei in „filename“ aufgelöst werden. Der Eintrag wird ignoriert.
Compilerwarnung (Stufe 1) C5238 Dateisystemfehler: „filename“ kann nicht zum Lesen geöffnet werden und wird ignoriert.
Compilerwarnung (Stufe 4) C5239 symbol“: Potenziell auslösende Funktion, die von einer Funktion als __declspec(nothrow) deklarierten Funktion aufgerufen wurde. Nicht definiertes Verhalten kann auftreten, wenn eine Ausnahme ausgelöst wird.
Compilerwarnung (Stufe 4) C5240 attribute-name“: Das Attribut wird an dieser syntaktischen Position ignoriert.
Compilerwarnung (Stufe 1) C5241 Die Verwendung von „/exportHeader“ für die Suche nach „header-name“ ist veraltet. Verwenden Sie stattdessen „/headerName:name value=filename“.
Compilerwarnung (Stufe 1) C5242 Syntaxfehler in Pragma „Identifier
Compilerwarnung (Stufe 1, deaktiviert) C5243 type-name“: Die Verwendung der unvollständigen Klasse „class-name“ kann potenziell zu einem Definitionsregelverstoß durch eine ABI-Einschränkung führen.
Compilerwarnung (Stufe 1) C5244 „#include <Dateiname>“ im Geltungsbereich von Modul „module-name-1“ ist offenbar fehlerhaft. Erwägen Sie, diese Anweisung vor die Moduldeklaration zu verschieben, oder ersetzen Sie den Texteinschluss durch „import <module-name-2>;“.
Compilerwarnung (Stufe 4, deaktiviert) C5245 function“: Eine nicht referenzierte Funktion mit interner Verknüpfung wurde entfernt.
Compilerwarnung (Stufe 1, deaktiviert) C5246 member“: Die Initialisierung eines Teilobjekts muss in geschweifte Klammern eingeschlossen werden.
Compilerwarnung (Stufe 1, deaktiviert) C5247 Der Abschnitt „section-name“ ist für die dynamische C++-Initialisierung reserviert. Das manuelle Erstellen des Abschnitts beeinträchtigt die dynamische C++-Initialisierung und führt möglicherweise zu einem nicht definierten Verhalten.
Compilerwarnung (Stufe 1, deaktiviert) C5248 Der Abschnitt „section-name“ ist für die dynamische C++-Initialisierung reserviert. Manuell in den Abschnitt eingesetzte Variablen werden möglicherweise optimiert, und ihre Reihenfolge im Vergleich zu vom Compiler generierten dynamischen Initialisierern ist nicht angegeben.
Compilerwarnung (Stufe 1, deaktiviert) C5249 bitfield“ vom Typ „enumeration_name“ weist benannte Enumeratoren mit Werten auf, die nicht in der angegebenen Bit-Feldbreite von „bitfield_width“ dargestellt werden können.
Compilerwarnung (Stufe 3, deaktiviert) C5250 function_name“: Intrinsische Funktion nicht deklariert.
Compilerwarnung (Stufe 4, deaktiviert) C5251 segment-name“ wurde geändert, nachdem der Header eingeschlossen wurde.
Compilerwarnung (Stufe 4) C5252 Mehrere verschiedene Typen führten zu demselben XFG-Typhash hash-value. Die PDB zeichnet nur Informationen für einen von ihnen auf.
Compilerwarnung (Stufe 4) C5253 Eine nicht lokale Lambdafunktion kann keinen Erfassungsstandard aufweisen.
Compilerwarnung (Stufe 4, deaktiviert) C5254 Für das Sprachfeature „knappe statische Aussage“ (terse static assert) ist das Compiler-Flag „/std:c++17“ erforderlich.
Compilerwarnung (Stufe 3) C5255 Nicht beendetes bidirektionales Zeichen gefunden: „U+XXXX“
Compilerwarnung (Stufe 1, deaktiviert) C5256 enumeration“: Eine nicht definierende Deklaration einer Enumeration mit einem festen zugrunde liegenden Typ ist nur als eigenständige Deklaration zulässig.
Compilerwarnung (Stufe 1 oder 4) C5257 enumeration“: Die Enumeration wurde zuvor ohne einen festen zugrunde liegenden Typ deklariert.
Compilerwarnung (Stufe 4, deaktiviert) C5258 Die explizite Erfassung von „symbol“ ist für diese Verwendung nicht erforderlich.
Compilerwarnung (Stufe 4, deaktiviert) C5259 specialized-type“: Explizite Spezialisierung erfordert „template <>“.
Compilerwarnung (Stufe 1) C5260 Die Konstantenvariable „variable-name“ weist eine interne Bindung in einem eingeschlossenen Headerdateikontext auf, aber eine externe Verknüpfung im importierten Headereinheitskontext. Erwägen Sie, sie auch als „inline“ zu deklarieren, wenn sie über Übersetzungseinheiten hinweg freigegeben wird, oder „statisch“, um die Absicht auszudrücken, sie lokal für diese Übersetzungseinheit zu verwenden.
Compilerwarnung (Stufe 2) C5261 Kein Integertyp kann alle Enumeratorwerte in der Enumeration „enum-name“ darstellen
Compilerwarnung (Stufe 1, Fehler, deaktiviert) C5262 Hier erfolgt ein impliziter Fall-Through. Fehlt eine „break“-Anweisung? Verwenden Sie [[fallthrough]], wenn eine break-Anweisung zwischen Fällen absichtlich weggelassen wird.
Compilerwarnung (Stufe 4, deaktiviert) C5263 Das Aufrufen von „std::move“ für ein temporäres Objekt verhindert die Kopierauslassung.
Compilerwarnung (Stufe 4, deaktiviert) C5264 variable-name“: Die Variable „const“ wird nicht verwendet.
Compilerwarnung (Stufe 1) C5265 Der Suchpfad „path“ kann nicht geöffnet werden.
Compilerwarnung (Stufe 4, deaktiviert) C5266 Der Qualifizierer „const“ für den Rückgabetyp hat keine Auswirkung.
Compilerwarnung C5267 Definition des impliziten Kopierkonstruktors/Zuweisungsoperators für „type“ ist veraltet, da er über einen benutzerseitig bereitgestellten Zuweisungsoperator/Kopierkonstruktor verfügt.
Compilerwarnung (Stufe 1) C5268 Fehler beim Zuordnen des Speichers an der festen Adresse 0xaddress. Verwenden Sie /Yb, um eine bestimmte Adressbasis anzugeben, wenn bitgleiche PCH-Dateien erforderlich sind.
Compilerwarnung (Stufe 1) C5269 Fehler beim Zuordnen des PCH-Speichers an der festen Adresse 0xaddress. Verwenden Sie /Ym, um eine bestimmte Adressbasis anzugeben, wenn bitgleiche PCH-Dateien erforderlich sind.
Compilerwarnung (Stufe 3) C5270 value“ ist für Option „switch name“ nicht zulässig. Zulässige Werte: value list
Compilerwarnung (Stufe 4) C5271 Die zuvor importierte Assembly „assembly1“ hat denselben Namen wie Assembly „assembly2“, die importiert wird. Ist dies beabsichtigt?
Compilerwarnung (Stufe 1) C5272 Das Auslösen eines Objekts vom nicht kopierbaren Typ „type“ ist nicht standardmäßig. Wenn eine Kopie zur Laufzeit benötigt wird, wird sie wie durch memcpy erstellt.
Compilerwarnung (Stufe 1) C5273 Verhaltensänderung: _Alignas wird für anonymen Typ nicht mehr ignoriert (höher gestufte Member werden ausgerichtet)
Compilerwarnung (Stufe 1) C5274 Verhaltensänderung: _Alignas gilt nicht mehr für den Typ „type“ (gilt nur für deklarierte Datenobjekte)
Compilerwarnung (Fehler) C5275 Vordergründige Assembly „name“ wird unter „/clr“ importiert; fehlt die Option „/clr:netcore“?
Compilerwarnung (Stufe 1, Fehler) C5300 „#pragma omp atomic“: Linker Operand von „operator“ muss links neben dem Zuordnungsausdruck übereinstimmen.
Compilerwarnung (Stufe 1) C5301 „#pragma omp for“: „loop-index“ nimmt zu, während die Schleifenbedingung „comparison“ verwendet; Schleife ohne Abbruch?
Compilerwarnung (Stufe 1) C5302 „#pragma omp for“: „loop-index“ nimmt ab, während die Schleifenbedingung „comparison“ verwendet; Schleife ohne Abbruch?
Compilerwarnung (Stufe 1) C5303 Die mit [[msvc::intrinsic]] gekennzeichnete Funktion hat keine No-Op-Umwandlung zur Folge.
Compilerwarnung (Stufe 1) C5304 Eine Deklaration, die durch die using-Deklaration „name1“ aus diesem Modul exportiert wurde, hat eine interne Verknüpfung, und die Verwendung eines solchen Namens außerhalb des Moduls ist falsch formiert. Erwägen Sie, „name2“ als „inline“ zu deklarieren, um sie außerhalb dieses Moduls zu verwenden.
Compilerwarnung (Stufe 1) C5305 name“: eine explizite Instanziierungsdeklaration, die auf eine explizite Instanziierungsdefinition folgt, wird ignoriert.

Weitere Informationen

C/C++-Compiler und -Buildtools: Fehler und Warnungen
Compilerwarnungen C4000 bis C5999