[LLVMbugs] [Bug 11320] New: sync builtins parameter type matching fails
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Sun Nov 6 08:48:37 PST 2011
http://llvm.org/bugs/show_bug.cgi?id=11320
Bug #: 11320
Summary: sync builtins parameter type matching fails
Product: clang
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: C++
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: luked at cs.rochester.edu
CC: dgregor at apple.com, llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 7583
--> http://llvm.org/bugs/attachment.cgi?id=7583
Preprocessed source triggering bug.
We have a use of the sync builtins that attempts to:
__sync_bool_compare_and_swap(volatile uint32_t*, uint32_t, uint32_t)
on a 64-bit platform, but clang++ complains that it can't coerce the first
parameter to volatile int*. I'm certain that the types all match. I've included
a preprocessed source file that illustrates the problem (a number of different
times).
Note that simple test cases do not fail---there's something about our
particular use that is triggering the problem.
Reproduce with the attachment:
clang++ -Wall -m64 -c byeau.cpp -o /dev/null
The source comes from my attempt to compile rstm.googlecode.com with clang++.
The entire package compiles fine with gcc, including the current gcc-4.6.1.
--
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.
More information about the llvm-bugs
mailing list