Durch Zufall, lief ich llc auf einige Code aus einem llvm Backend Dump. Ich meine, es gibt Code auf Produktionsebene, der dieses Beispiel erfolgreich kompiliert und das Ergebnis korrekt ausführt.Reproduzieren llvm IR-Typ Fehler programmatisch
Hier ist ein (verkürzt und abstrahiert) Auszug:
%s = type { i8* }
define double @foo(i8*) { ret double 0.0 }
@"foo" = constant %s { double (i8*)* @"foo" }
llc klagt:
error: element 0 of struct initializer doesn't match struct element type
Wie kann ich den gleichen Fehler mit dem C++ API auslösen? Die Einstellung verifyModules erzeugt keinen Fehler.