Yep - consider it done. Jim
> -----Original Message----- > From: [email protected] [mailto:antlr-interest- > [email protected]] On Behalf Of Justin Murray > Sent: Thursday, July 21, 2011 10:19 AM > To: [email protected] > Subject: Re: [antlr-interest] [C target] Warnings in 64-bit compile > > Hi Jim, > > I think I tracked down and fixed this bug in the C target template. > Attached is the patched version of C.stg, which I extracted from antlr- > 3.4-complete-no-antlrv2.jar/org/antlr/codegen/templates/C/C.stg > and modified. It looks like it is a simple one line fix on line 1699, > changing from ANTLR3_UINT32 to ANTLR3_MARKER. I've confirmed that this > patch makes the warnings go away in my 64-bit build, so I'm submitting > for your review. Please let me know if/when this makes it into a > release. > > Thanks, > > -- Justin > > On 6/24/2011 1:34 PM, Jim Idle wrote: > > There are few bug fixes in this beta - all that I can get in will be > > in the release version, which won't be too long now. However, you > > should still avoid backtrack and memorize unless there is no other > choice. > > > > Jim > > > >> -----Original Message----- > >> From: [email protected] [mailto:antlr-interest- > >> [email protected]] On Behalf Of Justin Murray > >> Sent: Friday, June 24, 2011 8:12 AM > >> To: [email protected] > >> Subject: Re: [antlr-interest] [C target] Warnings in 64-bit compile > >> > >> Jim, > >> > >> I just wanted to see if this was on your radar for the 3.4 C runtime > >> update. I haven't been able to test it with beta3 because I hit some > >> earlier roadblocks. > >> > >> Thanks, > >> > >> -- Justin > >> > >> > >> > >> Ah it is probably because the backtrack and memorize option. I > >> strongly > >> > >> advise that you don't use these but left factor your grammar. > >> However, I > >> > >> will fix it of course. > >> > >> > >> > >> > >> > >> Jim > >> > >> > >> > >> > >> > >> -----Original Message----- > >> > >> From: Justin Murray [mailto:[email protected]] > >> > >> Sent: Tuesday, December 28, 2010 1:39 PM > >> > >> To: Jim Idle; [email protected] > >> > >> Subject: RE: [antlr-interest] [C target] Warnings in 64-bit > compile > >> > >> > >> > >> > >> > >> I believe that it is caused by using the memorize=true; option and > >> > >> building 64-bit. The following grammar has these warnings in the > >> > >> generated TestParser.c (compiled as C++ code in Visual Studio > >> 2008). > >> > >> You will find the offending line at the beginning of the generated > >> > >> prog() function. > >> > >> > >> > >> > >> > >> ----------------------------- > >> > >> grammar Test; > >> > >> > >> > >> > >> > >> options > >> > >> { > >> > >> language=C; > >> > >> backtrack=true; > >> > >> memoize=true; > >> > >> } > >> > >> > >> > >> > >> > >> prog > >> > >> : SOMETHING+; > >> > >> > >> > >> > >> > >> SOMETHING > >> > >> : 'A'..'Z'; > >> > >> > >> > >> ------------------------------ > >> > >> > >> > >> > >> > >> Thanks, > >> > >> > >> > >> > >> > >> Justin > >> > >> > >> > >> > >> > >> -----Original Message----- > >> > >> From: [email protected] > >> > >> [mailto:[email protected]] On Behalf Of Jim Idle > >> > >> Sent: Tuesday, December 28, 2010 3:04 PM > >> > >> To: [email protected] > >> > >> Subject: Re: [antlr-interest] [C target] Warnings in 64-bit > >> compile > >> > >> > >> > >> > >> > >> There were some such warnings a number of versions back but they > >> are > >> > >> all fixed as far as I know. What construct are you using that > >> results > >> > >> in the warning? If you give me a reproducible grammar snippet, > >> then I > >> > >> will fix it for the next release, which is just waiting on my > >> other > >> > >> commitments right now. > >> > >> > >> > >> > >> > >> Jim > >> > >> > >> > >> > >> > >> -----Original Message----- > >> > >> From: [email protected] [mailto:antlr-interest- > >> > >> [email protected]] On Behalf Of Justin Murray > >> > >> Sent: Tuesday, December 28, 2010 11:59 AM > >> > >> To: [email protected] > >> > >> Subject: [antlr-interest] [C target] Warnings in 64-bit compile > >> > >> > >> > >> > >> > >> Jim, > >> > >> > >> > >> > >> > >> I am working on making our compiler support 64-bit builds, and > >> have > >> > >> run > >> > >> into a number of compiler warnings due to conflicting types in the > >> > >> ANTLR generated C code: > >> > >> > >> > >> > >> > >> warning C4244: '=' : conversion from 'ANTLR3_MARKER' to > >> > >> 'ANTLR3_UINT32', possible loss of data > >> > >> > >> > >> > >> > >> This comes from the line: > >> > >> > >> > >> > >> > >> axisMask_StartIndex = INDEX(); > >> > >> > >> > >> > >> > >> axisMask_StartIndex is declared as type ANTLR3_UINT32, and INDEX() > >> is > >> > >> returning type ANTLR3_MARKER. On a 64-bit build (on a Windows > >> > >> machine), > >> > >> ANTLR3_UINT32 is a typedef of uint32_t, and ANTLR3_MARKER is of > >> type > >> > >> ANTLR3_INT64 which is a typedef of int64_t. It seems to me that > >> this > >> > >> is > >> > >> a bug in the template, and that axisMask_StartIndex should have > >> been > >> > >> declared as type ANTLR3_MARKER. > >> > >> > >> > >> > >> > >> My questions are, do you know of a quick workaround for this for > >> now? > >> > >> Do you know if this will be fixed in the next release of the C > >> target > >> > >> runtime? Also, is there a tenative release date for the C runtime > >> > >> that > >> > >> will officially support ANTLR 3.3 (it seems that the code > >> generated > >> > >> by > >> > >> ANTLR 3.3 works ok with the 3.2 C runtime)? > >> > >> > >> > >> > >> > >> Thanks, > >> > >> > >> > >> > >> > >> Justin Murray > >> > >> Software Engineer > >> > >> [email protected] > >> > >> > >> > >> > >> > >> Aerotech, Inc. > >> > >> 101 Zeta Drive > >> > >> Pittsburgh, PA 15238 > >> > >> 412-963-7470 > >> > >> > >> > >> > >> > >> List: http://www.antlr.org/mailman/listinfo/antlr-interest > >> > >> Unsubscribe: http://www.antlr.org/mailman/options/antlr- > >> > >> interest/your- > >> > >> email-address > >> > >> > >> > >> > >> > >> List: http://www.antlr.org/mailman/listinfo/antlr-interest > >> > >> Unsubscribe: > >> > >> http://www.antlr.org/mailman/options/antlr-interest/your-email- > >> address > >> > >> > >> > >> > >> > >> List: http://www.antlr.org/mailman/listinfo/antlr-interest > >> > >> Unsubscribe: > >> http://www.antlr.org/mailman/options/antlr-interest/your-email- > >> address > >> > >> > >> > >> List: http://www.antlr.org/mailman/listinfo/antlr-interest > >> Unsubscribe: http://www.antlr.org/mailman/options/antlr- > interest/your- > >> email-address > > List: http://www.antlr.org/mailman/listinfo/antlr-interest > > Unsubscribe: http://www.antlr.org/mailman/options/antlr- > interest/your-email-address List: http://www.antlr.org/mailman/listinfo/antlr-interest Unsubscribe: http://www.antlr.org/mailman/options/antlr-interest/your-email-address -- You received this message because you are subscribed to the Google Groups "il-antlr-interest" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/il-antlr-interest?hl=en.
