segmentation fault

Frank Heckenbach ih8mj at fjf.gnu.de
Tue Dec 21 14:50:20 CET 2004


Adriaan van Os wrote:

> Frank Heckenbach wrote:
> 
> > willett wrote:
> >
> >> program file attached is a program missing a "}" which should get
> >> compilation
> >> error, but which compiles without errors and when run, gets a
> >> "Segmentation fault"
> >> and quits.
> >
> > It compiles fine on my system using 20041218.
> >
> > As Russ wrote, the program should compile, since in Pascal comments
> > cannot be nested, i.e. the one `}' terminates the comment, even if
> > it contains additional `{'s.
> 
> In the ISO Pascal Standard Report (Jensen, Wirth, third edition) I read 
> at the end of Section 5:
> 
> 	Comment = { "{" | "(*" ) { CommentElement } ( "}" | "*)"  ) .
> 
> 	A CommentElement is either an end of line or any sequence of 
> characters not containing "}" or "*)".
> 	
> 	Notes: { ...*) and (* ...} are valid comments. The comment {(*) is 
> equivalent to the comment {(}.
> 
> This means that {{} is a valid comment, but {}} isn't, according to the 
> standard. Several other Pascal compilers, however, only allow (*.. { .. 
> } .. *) or { .. (* .. *) .. }. But, as Frank noted, you can use the 
> --nested-comments option in GPC to get similar behaviour.

This would be `--no-mixed-comments' which is set (i.e. "no") by
default, except in standard Pascal modes.

Frank

-- 
Frank Heckenbach, frank at g-n-u.de, http://fjf.gnu.de/, 7977168E
GPC To-Do list, latest features, fixed bugs:
http://www.gnu-pascal.de/todo.html
GPC download signing key: ACB3 79B2 7EB2 B7A7 EFDE  D101 CD02 4C9D 0FE0 E5E8




More information about the Gpc mailing list