Re: Trouble whit geyacc

Eric Bezault <ericb-D6Qt/9opevxWk0Htik3J/[email protected]>
Newsgroups gmane.comp.lang.eiffel.gobo.general
Organization Gobo
Message-ID <[email protected]>
Bonjour Jacques,

Jacques Silberstein wrote:
> Bonjour Eric,
> 
> I'm joust trying to use geyacc starting from the example calc. I did
> change calc.y to add some operator and then recompile whit the command:
>  > geyacc -o calc.e calc.y
> But the eiffel compilation give the following deferred futures:
> 
> Deferred feature: yy_init_value_stacks From: YY_NEW_PARSER_SKELETON
> Deferred feature: yy_clear_value_stacks From: YY_NEW_PARSER_SKELETON
> Deferred feature: yy_push_last_value From: YY_NEW_PARSER_SKELETON
> Deferred feature: yy_pop_last_value From: YY_NEW_PARSER_SKELETON
> Deferred feature: yy_create_value_stacks From: YY_NEW_PARSER_SKELETON
> 
> All these features where present in the supplied version of calc.e. But
> it seem that the actuel version of geyacc does generate that code.
>>From the documentation it doesn't seem that I miss some option which
> could resolve that problem! But.. 
> 
> 
> Here are some system refereces: 
> 
> ref: [email protected]:~/develop/calc> geyacc -V
> geyacc version 3.3
> 
> uname -a
> Linux rochefort 2.4.20-4GB-athlon #1 Mon Mar 17 17:56:47 UTC 2003 i686
> unknown unknown GNU/Linux
> 
> ISE_EIFFEL version: 5.409

This problem is due to a different way of handling semantic
values to make them more type safe. This new implementation
has been introduced in Gobo 3.2, but unfortunately the doc
is still slightly out of date because of this modification.
A short explanation can be found in the 'geyacc' section
for the notes about version 3.2 in the file $GOBO/History.txt.
In order to have a transition path, geyacc provides two
new options: --old_typing (to get the behavior as described
in the doc) and --new_typing (to get the new behavior as
explained in $GOBO/History.txt). In Gobo 3.3 the option
--old_typing is the default whereas the calc example has
been adapted to use the new behavior. Hence the compilation
errors that you got. The version of calc.e in the distribution
has been generated correctly because we use geant scripts
(see built.eant) which explicitly sets the --new_typing option:

    <geyacc new_typing="true" input="calc.y" output="calc.e"/>

In your case, in order to get rid of the compilation errors,
you just have to type:

    geyacc --new_typing -o calc.e calc.y

-- 
Eric Bezault
mailto:ericb-D6Qt/9opevxWk0Htik3J/[email protected]
http://www.gobosoft.com



------------------------ Yahoo! Groups Sponsor ---------------------~-->
Buy Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark
Printer at MyInks.com.  Free s/h on orders $50 or more to the US & Canada.
http://www.c1tracking.com/l.asp?cid=5511
http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/saFolB/TM
---------------------------------------------------------------------~->

To Post a message, send it to:   [email protected]
To Unsubscribe, send a blank message to: [email protected] 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
     http://groups.yahoo.com/group/gobo-eiffel/

<*> To unsubscribe from this group, send an email to:
     [email protected]

<*> Your use of Yahoo! Groups is subject to:
     http://docs.yahoo.com/info/terms/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.