http://llvm.org/bugs/show_bug.cgi?id=13681
Bug #: 13681
Summary: cc1 expanding builtin macros when processing cpp
output
Product: clang
Version: trunk
Platform: Other
OS/Version: All
Status: NEW
Severity: normal
Priority: P
Component: Frontend
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected]
Classification: Unclassified
Created attachment 9103
--> http://llvm.org/bugs/attachment.cgi?id=9103
reduced reproduction case
When trying to compile clang with clang with a target of
mips64-unknown-freebsd10.0 the mips macro is incorrectly expanded when
processing AnalysisDeclContext.ii. Since the "#undef mips" in
include/llvm/ADT/Triple.h has already been removed by the previous pass this
results in a parse error similar to the following:
$ /usr/local/bin/clang -cc1 -triple mips64-unknown-freebsd10.0 -S -v -o foo.s
-x c++-cpp-output foo.ii
clang -cc1 version 3.2 based upon LLVM 3.2svn default target
amd64-portbld-freebsd9.0
ignoring duplicate directory "/usr/include/c++/4.2"
#include "..." search starts here:
#include <...> search starts here:
/usr/include/c++/4.2
/usr/include/c++/4.2/backward
/usr/local/lib/clang/3.2/include
/usr/include
End of search list.
foo.ii:4:5: error: expected '}'
mips,
^
<built-in>:129:14: note: expanded from macro 'mips'
#define mips 1
^
foo.ii:3:17: note: to match this '{'
enum ArchType {
^
foo.ii:8:1: error: extraneous closing brace ('}')
}
^
2 errors generated.
Note: I have no idea why AnalysisDeclContext.cpp triggers this but dozens of
other files with dependencies on Triple.h don't.
--
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