On Sun, 2004-12-19 at 22:52, Adam Warner wrote:> Hi Reid Spencer, > > > CC=/path/to/llvmgcc CXX=/path/to/llvmg++ configure > > make > > > > and was able to reproduce the problem. Not sure what's up with that but > > as Misha pointed out, llvmgcc isn't any "particular" version of 3.4, its > > just 3.4ish. I also concur with him that you should file a bug and > > attach the pre-processed source to it. You can get that with the -E flag > > to GCC. > > Many thanks for everyone's wonderful replies. > > I added the -E flag to the build options. Are the preprocessed sources the > .o files that now look something like this: > > # 1 "/home/adam/t/t5/freetype-2.1.9/src/sfnt/sfnt.c" > # 1 "/home/adam/t/t5/freetype-2.1.9//" > # 1 "/home/adam/t/t5/freetype-2.1.9/src/sfnt/sfnt.c" > # 1 "<built-in>" > # 1 "<command line>" > ... > typedef int _G_int16_t __attribute__ ((__mode__ (__HI__))); > typedef int _G_int32_t __attribute__ ((__mode__ (__SI__))); > typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__))); > typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));Yup, that would be the preprocessed sources!> ... > > ...because there's 4.8MB of them and I'd first like to confirm this is > what I should be attaching. I'm sorry but at this stage I don't have the > capabilities to narrow down the FreeType source code to a minimum test > case (unless the FreeType source code happens to looks uncannily like the > C version of Hello, World!)Can you just capture the pre-processed source for the one FreeType file that produces the errors about the non-constant initialization? Just see what the makefile spits out for a compilation command for that one file and change "-c" to "-E". Hopefully that's not multi-megabyte. If it is, please compress it with gzip before attaching it to the bug. Thanks, Reid. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20041219/d5665b95/attachment.sig>
Adam sent me his tar file and only one file in it needs to be attached
to a bug report, and it's only about 260KB. The initialization that
causes the errors is below. I'm sure I can prune it down significantly.
static const FT_Frame_Field header_fields[] {
{ ft_frame_start, 0, 54 },
{ ft_frame_ulong_be, (FT_Byte)sizeof (
((TT_Header*)0)->Table_Version ), (FT_UShort)( ((size_t) &((TT_Header
*)0)->Table_Version) ) },
{ ft_frame_ulong_be, (FT_Byte)sizeof (
((TT_Header*)0)->Font_Revision ), (FT_UShort)( ((size_t) &((TT_Header
*)0)->Font_Revision) ) },
{ ft_frame_long_be, (FT_Byte)sizeof (
((TT_Header*)0)->CheckSum_Adjust ), (FT_UShort)( ((size_t) &((TT_Header
*)0)->CheckSum_Adjust) ) },
{ ft_frame_long_be, (FT_Byte)sizeof (
((TT_Header*)0)->Magic_Number ), (FT_UShort)( ((size_t) &((TT_Header
*)0)->Magic_Number) ) },
{ ft_frame_ushort_be, (FT_Byte)sizeof ( ((TT_Header*)0)->Flags
), (FT_UShort)( ((size_t) &((TT_Header *)0)->Flags) ) },
{ ft_frame_ushort_be, (FT_Byte)sizeof (
((TT_Header*)0)->Units_Per_EM ), (FT_UShort)( ((size_t) &((TT_Header
*)0)->Units_Per_EM) ) },
=================== Errors start with the next line ============== {
ft_frame_long_be, (FT_Byte)sizeof (
((TT_Header*)0)->Created[0] ), (FT_UShort)( ((size_t) &((TT_Header
*)0)->Created[0]) ) },
{ ft_frame_long_be, (FT_Byte)sizeof (
((TT_Header*)0)->Created[1] ), (FT_UShort)( ((size_t) &((TT_Header
*)0)->Created[1]) ) },
{ ft_frame_long_be, (FT_Byte)sizeof (
((TT_Header*)0)->Modified[0] ), (FT_UShort)( ((size_t) &((TT_Header
*)0)->Modified[0]) ) },
{ ft_frame_long_be, (FT_Byte)sizeof (
((TT_Header*)0)->Modified[1] ), (FT_UShort)( ((size_t) &((TT_Header
*)0)->Modified[1]) ) },
{ ft_frame_short_be, (FT_Byte)sizeof ( ((TT_Header*)0)->xMin ),
(FT_UShort)( ((size_t) &((TT_Header *)0)->xMin) ) },
{ ft_frame_short_be, (FT_Byte)sizeof ( ((TT_Header*)0)->yMin ),
(FT_UShort)( ((size_t) &((TT_Header *)0)->yMin) ) },
{ ft_frame_short_be, (FT_Byte)sizeof ( ((TT_Header*)0)->xMax ),
(FT_UShort)( ((size_t) &((TT_Header *)0)->xMax) ) },
{ ft_frame_short_be, (FT_Byte)sizeof ( ((TT_Header*)0)->yMax ),
(FT_UShort)( ((size_t) &((TT_Header *)0)->yMax) ) },
{ ft_frame_ushort_be, (FT_Byte)sizeof (
((TT_Header*)0)->Mac_Style ), (FT_UShort)( ((size_t) &((TT_Header
*)0)->Mac_Style) ) },
{ ft_frame_ushort_be, (FT_Byte)sizeof (
((TT_Header*)0)->Lowest_Rec_PPEM ), (FT_UShort)( ((size_t) &((TT_Header
*)0)->Lowest_Rec_PPEM) ) },
{ ft_frame_short_be, (FT_Byte)sizeof (
((TT_Header*)0)->Font_Direction ), (FT_UShort)( ((size_t) &((TT_Header
*)0)->Font_Direction) ) },
{ ft_frame_short_be, (FT_Byte)sizeof (
((TT_Header*)0)->Index_To_Loc_Format ), (FT_UShort)( ((size_t)
&((TT_Header *)0)->Index_To_Loc_Format) ) },
{ ft_frame_short_be, (FT_Byte)sizeof (
((TT_Header*)0)->Glyph_Data_Format ), (FT_UShort)( ((size_t)
&((TT_Header *)0)->Glyph_Data_Format) ) },
{ ft_frame_end, 0, 0 }
};
Reid Spencer wrote:
>On Sun, 2004-12-19 at 22:52, Adam Warner wrote:
>
>
>>Hi Reid Spencer,
>>
>>
>>
>>>CC=/path/to/llvmgcc CXX=/path/to/llvmg++ configure
>>>make
>>>
>>>and was able to reproduce the problem. Not sure what's up with
that but
>>>as Misha pointed out, llvmgcc isn't any "particular"
version of 3.4, its
>>>just 3.4ish. I also concur with him that you should file a bug and
>>>attach the pre-processed source to it. You can get that with the -E
flag
>>>to GCC.
>>>
>>>
>>Many thanks for everyone's wonderful replies.
>>
>>I added the -E flag to the build options. Are the preprocessed sources
the
>>.o files that now look something like this:
>>
>># 1 "/home/adam/t/t5/freetype-2.1.9/src/sfnt/sfnt.c"
>># 1 "/home/adam/t/t5/freetype-2.1.9//"
>># 1 "/home/adam/t/t5/freetype-2.1.9/src/sfnt/sfnt.c"
>># 1 "<built-in>"
>># 1 "<command line>"
>>...
>>typedef int _G_int16_t __attribute__ ((__mode__ (__HI__)));
>>typedef int _G_int32_t __attribute__ ((__mode__ (__SI__)));
>>typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__)));
>>typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));
>>
>>
>
>Yup, that would be the preprocessed sources!
>
>
>
>>...
>>
>>...because there's 4.8MB of them and I'd first like to confirm
this is
>>what I should be attaching. I'm sorry but at this stage I don't
have the
>>capabilities to narrow down the FreeType source code to a minimum test
>>case (unless the FreeType source code happens to looks uncannily like
the
>>C version of Hello, World!)
>>
>>
>
>Can you just capture the pre-processed source for the one FreeType file
>that produces the errors about the non-constant initialization? Just see
>what the makefile spits out for a compilation command for that one file
>and change "-c" to "-E". Hopefully that's not
multi-megabyte. If it is,
>please compress it with gzip before attaching it to the bug.
>
>Thanks,
>
>Reid.
>
>
>
>------------------------------------------------------------------------
>
>_______________________________________________
>LLVM Developers mailing list
>LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
>http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
Adam Warner
2004-Dec-20 08:37 UTC
[LLVMdev] Re: Re: Compiling FreeType 2.1.9 with LLVM 1.4
Hi Jeff Cohen,> Adam sent me his tar file and only one file in it needs to be attached > to a bug report, and it's only about 260KB.Yes, sfnt.o is the file I was intending to upload. Many thanks for the confirmation and analysis. Here's the bug report: <http://llvm.cs.uiuc.edu/bugs/show_bug.cgi?id=487> I hit Enter outside the text box which submitted the bug report before it was complete and tidy, though I believe it's decipherable. I added the link back to this discussion as an attachment comment. Thanks again to all, Adam