Beim Erstellen von 64-Bit-Windows-Code auf ARM64EC schlägt die Kompilierung mit einem Compiler-Absturz fehlC++

Programme in C++. Entwicklerforum
Anonymous
 Beim Erstellen von 64-Bit-Windows-Code auf ARM64EC schlägt die Kompilierung mit einem Compiler-Absturz fehl

Post by Anonymous »

Ich stoße auf einen internen Compilerfehler (ICE) mit MSVC 19.44, wenn ich ein C++-Projekt für ARM64EC unter Windows erstelle.
Umgebung
Betriebssystem: Windows auf ARM
Compiler: MSVC 19.44 (Visual Studio 2022)
Host/Ziel: HostArm64 → arm64
Sprachstandard: C++20 />Build-Eigenschaften
Große C++-Codebasis
Kompilieren mehrerer .cpp-Dateien in einem einzigen cl.exe-Aufruf
Starke Verwendung von Drittanbieter-Headern (z. B. Qt, Boost, TBB)
/bigobj aktiviert
Als Fehler behandelte Warnungen (/WX)
Fehlerdetails

Code: Select all

The compiler crashes with repeated INTERNAL COMPILER ERROR messages and eventually fails with:
cl : command line error D8040: error creating or communicating with child process

Der Stack-Trace zeigt wiederholt interne MSVC-Funktionen an, zum Beispiel:

Code: Select all

CL!strcpy()
CL!DllGetObjHandler()
CL!translate_cpfe_args()
CL!get_supports_arm32()
Der Absturz tritt während der Kompilierung auf, bevor Diagnosen vom Benutzercode ausgegeben werden.
Beobachtungen
Die gleichen Quelldateien werden erfolgreich auf x64 kompiliert
Keine spezifische .cpp-Datei meldet einen Syntax- oder Semantikfehler
Eine Reduzierung der Optimierungsstufe vermeidet den Absturz nicht
Der Fehler tritt nur für dieses bestimmte Ziel auf, wenn es als erstellt wird Gruppe
Weist auf einen möglichen Compiler-Fehler im Zusammenhang mit ARM64EC + PCH + Multi-TU-Aufruf hin
Frage
Ist dies ein bekanntes MSVC ARM64EC-Compilerproblem?
Gibt es empfohlene Problemumgehungen, wie zum Beispiel:
Deaktivieren von PCH für ARM64EC
Kompilieren eines Übersetzungseinheit pro cl.exe-Aufruf
Wechseln der MSVC-Toolset-Versionen
Verwenden von Hostx64 anstelle von HostArm64
Vermeiden von /MP oder /bigobj für ARM64EC-Builds (bereits versucht)
Jede Anleitung von anderen, die auf ähnliche ARM64EC-ICEs gestoßen sind, wäre dankbar.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post