Andrew, ... On Mon, 2006-10-09 at 14:05 -0500, Andrew Lenharth wrote: > > Changes in directory llvm/include/llvm/ADT: > > SmallVector.h updated: 1.19 -> 1.20 > --- > Log message: > > Fix build error in gcc 3.4 and make more this general
This compiled on my 3.4.6 compiler on Linux just fine before the patch. What was the error you were trying to fix? > > --- > Diffs of the changes: (+1 -1) > > SmallVector.h | 2 +- > 1 files changed, 1 insertion(+), 1 deletion(-) > > > Index: llvm/include/llvm/ADT/SmallVector.h > diff -u llvm/include/llvm/ADT/SmallVector.h:1.19 > llvm/include/llvm/ADT/SmallVector.h:1.20 > --- llvm/include/llvm/ADT/SmallVector.h:1.19 Sun Oct 8 17:28:34 2006 > +++ llvm/include/llvm/ADT/SmallVector.h Mon Oct 9 14:05:44 2006 > @@ -35,7 +35,7 @@ > protected: > #ifdef __GNUC__ > typedef char U; > - U FirstEl __attribute__((aligned(__alignof__(double)))); > + U FirstEl __attribute__((aligned)); Are you sure this is right? In section 5.31 of the GCC Manual it indicates that if an alignment size is not given with the aligned attribute keyword then it defaults to: "the maximum useful alignment for the target machine you are compiling for. Whenever you leave out the alignment factor in an `aligned' attribute specification, the compiler automatically sets the alignment for the declared variable or field to the largest alignment which is ever used for any data type on the target machine you are compiling for". Is this what we want here? Reid. > #else > union U { > double D; > > > > _______________________________________________ > llvm-commits mailing list > llvm-commits@cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits