https://llvm.org/bugs/show_bug.cgi?id=25606
Bug ID: 25606
Summary: clang-cl "PHI node entries do not match predecessors!"
"Instruction does not dominate all uses!"
Product: clang
Version: trunk
Hardware: All
OS: All
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected]
Classification: Unclassified
With recent Clang trunk:
> $ cat test.cc
> struct S0 { ~S0(); };
> struct S1 { virtual ~S1(); };
> struct S2: virtual S1 { void f(); };
> struct S3: S2 {};
> void S2::f() {
> S0 s;
> (void) dynamic_cast<S3 *>(this);
> }
> $ clang -cc1 -triple i386-pc-windows-msvc -emit-obj -fexceptions test.cc
> PHI node entries do not match predecessors!
> %8 = phi %struct.S3* [ %7, %dynamic_cast.notnull ], [ null,
> %dynamic_cast.null ]
> label %dynamic_cast.notnull
> label %invoke.cont
> Instruction does not dominate all uses!
> %7 = bitcast i8* %6 to %struct.S3*
> %8 = phi %struct.S3* [ %7, %dynamic_cast.notnull ], [ null,
> %dynamic_cast.null ]
> fatal error: error in backend: Broken function found, compilation aborted!
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs