Esterel Support
 
   
 
 
 Known Bugs & Fixes
 

 

 

 

 



This page gives all the currently known bugs and possibly gives access to corrections. Once a bug has been corrected, the Esterel distribution is updated.
Thus, if you download the latest release of Esterel, you will have the corrected processors.

Nevertheless, if you already have the current distribution, you probably just want to download the corrected processor(s).

The following table sums them up:

Date
Processor
Patch level
Downloads
1
2000
v87-v5_22
2
1999
p54 with common(p41)
3
1999
4
1999
no patch
 
5
1999
 
 
6
1999
p78a

Processor gives the name of the processor to download. It is an hyperlink to the bug description.
Patch level gives patch level of the processor.
Check this value against the rcs name value given by the -info option of the processor
(you can use the esterel -info command).
Downloads gives links to the new version of the processor for the known architectures.


1 lcsc (esterel Core )
Incorrect circuit translation.
Description: The circuit translation may be incorrect in some cases, resulting in wrong code.

State: Fixed.

2 Occ (C code generator)
Description: The C boolean equation code obtained from optimized ssc code may be wrong on Solaris 5.6. This is a known bug that was corrected, but for a strange reason, the C code generator was not compiled with the right library (common p41) on Solaris 5.6.

State: Corrected. occ processor.

3 Wrong Simulation Of Optimized Code.
Description: After optimization of the ssc code, simulation may be wrong. It can show a non emitted signal as emitted. Technically, the ssc format contains pragmas which are specific information for the compiler. One of these pragma (the emitted: one) tells which signal is emitted depending on an equation value. This is used for local signals, but also for output signals. After optimization and new ssc generation, it appears that there is no good place to put the emitted: pragmas, since optimized and non optimized have same behavior, but not the same internal logic. As these pragma are used by the C simulation code, one may see wrong outputs. The behavior is respected, but the simulation output signal trace is wrong. The work around is to suppress the emitted: pragmas in the optimized ssc code. To do this, we provide scripts. The scripts distribution contains help.

State: to be corrected, work around using scripts.

4 sscoc

Description: Code generation is incorrect when using the -O option for automaton code (options -A -O or -v3 and -O). Unfortunately, the generated C code compiles, which makes the bug nasty.
PLEASE DO NOT USE OPTION -O UNTIL FURTHER NOTICE
State: To be corrected.

5 Building A Textual Simulator On Solaris.
Description: Do not use /usr/ucb/cc to build a textual simulator with the simulation library libcsimul.a. Use instead cc from SparcWorks, or gcc. libcsimul.a internally uses setjump and the associated structures defined in the the C library used by /usr/ucb/cc differ from the standard ones.
Here is what happens with the wristwatch example:
$ cd /wristwatch
$ make -f makefile.Unix CC=/opt/SUNWspro/bin/cc
$ ./sww
WRISTWATCH> ;
--- Output: MAIN_DISPLAY(1:00:00 24H) MINI_DISPLAY(1-1) ALPHABETIC_DISPLAY("SU") CHIME_STATUS(false) STOPWATCH_RUN_STATUS(false) STOPWATCH_LAP_STATUS(false) ALARM_STATUS(false) WRISTWATCH> .
$ make -f makefile.Unix CC=/usr/ucb/cc
$ ./sww
WRISTWATCH> ;
--- Output: 6 "1:00:00 24H" 7 "1-1" 8 """SU""" 11 false 12 false 13 false 14 false
WRISTWATCH> .
$

State: No fix.

6 Causality analyzer
Incorrect single verification for acyclic circuits with input relations.
Description: The single signal verification consists in verifying that each single is never instantaneously multiply emitted. The analysis depends on the reachable state space and the input care set defined by the user defined input relations. The single signal verification was incorrect when dealing with acyclic circuits that have relations on inputs. The input relations where omitted and not considered in the analysis in this particular case.

State: Fixed.
Patch as a new binary for the causality analyzer processos sccausal available.

 

 

 
 Contact Esterel Webmaster@