[antlr-interest] VC 7.0 antlr.dll to special ATTN of Ric Klaren and Terence Parr

Alexander Lenski alenski at dca.net
Sun Feb 9 23:50:03 PST 2003


Skipped content of type multipart/alternative-------------- next part --------------

1. Notes for the ANTLR DLL target ( MSVC 7.0, Unmanaged DLL ) by Alexander Lenski:

1.1 Project settings ("create new project" dialogs)
      - Win32 project
        - Application Settings
          - Application type
            - DLL
          - Additional options
            - Export symbols
1.2 Project properties (change defaults to)
      - Configuration Properties
        - C/C++
          - General
            - Additional Include Directories
              - drive:\antlr-2.7.2\lib\cpp
          - Preprocessor
            - Preprocessor Definitions
              - WIN32;_DEBUG;_WINDOWS;_USRDLL;ANTLR_EXPORTS;ANTLR_CXX_SUPPORTS_NAMESPACE
            - Code Generation
              - Runtime Library
                - Multi-threaded Debug DLL (/MDd)
              - Enable Function-Level Linking:
                - Yes
            - Language
              - Enable Run-Time Type Info
                - Yes
            - Precompiled Headers
              - Create/Use Precompiled Headers
                - Not Using Precompiled Headers
        
1.3 Some notes on the code change related to the DLL export
      - See the ASTFactory.hpp for the factory_type, factory_descriptor
        and factory_descriptor_list related defs.
      - SemanticException.hpp is not included in any of the antlr files,
        the SemanticException is not exported. I added the include
        in the CharScaner.hpp.
      - ParserInputState::~ParserInputState must be virtual to be properly
        exported.
      - Check files (e.g. with the WinDiff) for details and other changes.
      
2 Requests by Alexander Lenski
      - Please, (as a min) add the
          //!!!
          //Get number of non-consumed tokens:
          public:
          virtual  unsigned int entries() const;
        with the
          //!!!
          //Get number of non-consumed tokens:
          unsigned int TokenBuffer::entries() const
          { return queue.entries() - markerOffset;
          }
        highly useful function to the TokenBuffer.
        Please, in addition (as a max) make all data members of the
        TokenBuffer protected (as it is done with the InputBuffer)
        instead of private, add the
          //!!!
          //Get number of non-consumed chars:
          public:
          virtual  unsigned int entries() const;
          with the
          //!!!
          //Get number of non-consumed chars:
          unsigned int InputBuffer::entries() const
          { return queue.entries() - markerOffset;
          }
        to the InputBuffer too.
        These changes make specialization of the buffers possible.
      - About the ! suffix (currently not implemented in full) for AST
        construction rules
        - Please, clarify your intentions related to the !.
      - Please, consider addition of one more option for the C++ code gen to set
        DLL export/import customizable spec in all antlr-generated classes in the form
          class CUST_API SomeClass... 
    	  
    
-------------- next part --------------
A non-text attachment was scrubbed...
Name: antlr-2.7.2.zip
Type: application/x-zip-compressed
Size: 83834 bytes
Desc: not available
Url : http://www.antlr.org/pipermail/antlr-interest/attachments/20030210/2c45fced/antlr-2.7.2.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: lib.zip
Type: application/x-zip-compressed
Size: 654541 bytes
Desc: not available
Url : http://www.antlr.org/pipermail/antlr-interest/attachments/20030210/2c45fced/lib.bin


More information about the antlr-interest mailing list