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:jmur...@aerotech.com]
        
        Sent: Tuesday, December 28, 2010 1:39 PM
        
        To: Jim Idle; antl...@antlr.org
        
        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: antl...@antlr.org
        
        [mailto:antl...@antlr.org] On Behalf Of Jim Idle
        
        Sent: Tuesday, December 28, 2010 3:04 PM
        
        To: antl...@antlr.org
        
        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: antl...@antlr.org [mailto:antlr-interest-
        
        boun...@antlr.org] On Behalf Of Justin Murray
        
        Sent: Tuesday, December 28, 2010 11:59 AM
        
        To: antl...@antlr.org
        
        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
        
        jmur...@aerotech.com
        
        
        
        

        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

-- 
You received this message because you are subscribed to the Google Groups 
"il-antlr-interest" group.
To post to this group, send email to il-antlr-inter...@googlegroups.com.
To unsubscribe from this group, send email to 
il-antlr-interest+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/il-antlr-interest?hl=en.

Reply via email to