Still fixing things for correct compilation of TeX and al. under Plan9,
I stumbled upon this one.
Traditional lex(1) uses: char yytext[];
The code (main code for translation between Pascal and C), was declaring
in the external units: char *yytext;
The result is no problem at compilation/linkage, but a suicide at first
yytext external access. And I wandered with acid(1) and sam(1) to try
to understand what was going on. Of course, I suspected UTF/Rune and the
like, before suspecting a problem on the linkage.
So APE is a very good POSIX environment for verification, since, until
now, when Plan9 was not agreeing, it was right.
So for Plan9 lex(1), yytext is an array. And you can specify "%array" in
the first definition of your *.l for flex(1) so that it handles an
array too.
A side note.
gcc(1) is very verbose (well: I always set -Wall). ken-cc
is---surprise---more laconic; but when he was saying: no! he was right,
for things that were going silently under NetBSD.
And I like sam(1) too... Regexp and the mouse, that's it!
--
Thierry Laronde <tlaronde +AT+ polynum +dot+ com>
http://www.kergis.com/
Key fingerprint = 0FF7 E906 FBAF FE95 FD89 250D 52B1 AE95 6006 F40C