Eli   Documents Get Eli: Translator Construction Made Easy at SourceForge.net.
    Fast, secure and Free Open Source software downloads

General Information

 o Eli: Translator Construction Made Easy
 o Global Index
 o Frequently Asked Questions
 o Typical Eli Usage Errors


 o Quick Reference Card
 o Guide For new Eli Users
 o Release Notes of Eli
 o Tutorial on Name Analysis
 o Tutorial on Type Analysis
 o Typical Eli Usage Errors

Reference Manuals

 o User Interface
 o Eli products and parameters
 o LIDO Reference Manual
 o Typical Eli Usage Errors


 o Eli library routines
 o Specification Module Library

Translation Tasks

 o Lexical analysis specification
 o Syntactic Analysis Manual
 o Computation in Trees


 o LIGA Control Language
 o Debugging Information for LIDO
 o Graphical ORder TOol

 o FunnelWeb User's Manual

 o Pattern-based Text Generator
 o Property Definition Language
 o Operator Identification Language
 o Tree Grammar Specification Language
 o Command Line Processing
 o COLA Options Reference Manual

 o Generating Unparsing Code

 o Monitoring a Processor's Execution


 o System Administration Guide

Mail Home

New Features of Eli Version 4.7

Previous Chapter Next Chapter Table of Contents

Change in the Token Processor Interface

Input character strings are converted into internal representations by token processors (see Token Processors of Lexical Analysis). A token processor should not alter the string that it is converting in any way, but the original interface specification did not enforce that restriction because C did not provide a const qualifier.

In many applications, it is important to apply token processors to literal string constants. Recent C++ compilers do not allow literal string constants to be passed to character string parameters that are not const-qualified. We therefore decided to alter the token processor interface by const-qualifying its character string parameter.

A string pointer that is not const-qualified can always be passed to a const-qualified parameter; only the reverse is prohibited by the C definition. Thus this change is transparent, unless you have defined your own token processors. In the simplest case, you need only add the const qualifier to the first parameter in your token processor's definition. If your token processor does, however, alter its argument string (for example, by planting a null character at the end) then it must be rewritten.

Previous Chapter Next Chapter Table of Contents