[LLVMbugs] [Bug 126] llvmg++ generates casting code for member initialization
bugzilla-daemon at zion.cs.uiuc.edu
bugzilla-daemon at zion.cs.uiuc.edu
Tue Nov 18 13:14:12 PST 2003
http://llvm.cs.uiuc.edu/bugs/show_bug.cgi?id=126
sabre at nondot.org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Keywords| |regression
Resolution| |FIXED
Version|1.0 |trunk
------- Additional Comments From sabre at nondot.org 2003-11-18 15:14 -------
As it turns out, this was a bug in my fix for Bug 54, so it did not appear in
the 1.0 release.
Here's the testcase:
test/Regression/C++Frontend/2003-11-18-MemberInitializationCasting.cpp.tr
Here's the fix:
$ diff -u llvm-expand.c~ llvm-expand.c
--- llvm-expand.c~ 2003-11-18 15:11:16.000000000 -0600
+++ llvm-expand.c 2003-11-18 15:11:50.000000000 -0600
@@ -4982,7 +4982,7 @@
ResultBitSize = llvm_type_get_size(Result->Ty)*8;
- if (BitStart != 0 || BitStart+BitSize != ResultBitSize) {
+ if ((BitStart != 0 || BitStart+BitSize != ResultBitSize) && BitSize) {
/* Make sure that the value we are dealing with is of the right
* signedness.
*/
This testcase is now reduced to:
int %_Z1fi(int %j.1) {
entry:
ret int %j.1
}
... as it should be.
-Chris
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
More information about the llvm-bugs
mailing list