http://llvm.org/bugs/show_bug.cgi?id=11143
Summary: [3.0 regression] clang not mapping inline ask errors
back to source
Product: libraries
Version: 1.0
Platform: PC
OS/Version: All
Status: NEW
Severity: release blocker
Priority: P
Component: Support Libraries
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected]
As of Kevin's patch in r141814, we now are not mapping inline assembly errors
back to clang's diagnostic handler. This prevents us from printing the source
location, and we don't realize that an error occurred, so we continue
compilation.
$ cat t.c
void foo() {
asm("movl 0(%rax), 0(%edx)");
}
$ clang t.c
<inline asm>:1:16: error: invalid operand for instruction
movl 0(%rax), 0(%edx)
^~~~~~~
Undefined symbols for architecture x86_64:
"_main", referenced from:
start in crt1.10.6.o
This is what we used to get:
$ old-clang t.c
t.c:3:7: error: invalid operand for instruction
asm("movl 0(%rax), 0(%edx)");
^
<inline asm>:1:16: note: instantiated into assembly here
movl 0(%rax), 0(%edx)
^
1 error generated.
It looks like the bug is in around MCParser/AsmParser.cpp:1269, not passing
diagnostics into the LLVMContext's register diagnostic handler anymore. This
needs to be fixed for LLVM 3.0
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs