bug-bison
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bison 3.4.1 released [stable]


From: Akim Demaille
Subject: Re: Bison 3.4.1 released [stable]
Date: Mon, 27 May 2019 08:41:12 +0200

Hi Dennis,

> Le 26 mai 2019 à 21:09, Dennis Clarke <address@hidden> a écrit :
> 
> On 5/26/19 9:57 AM, Akim Demaille wrote:
>> Hi Dennis!
>> Thanks a lot for your efforts!
> 
> Just trying to help.  Bison really is an essential piece ya know.

I hope it remains this way :)


So, configure runs smoothly.

> I will spare you the twenty pages of compile log however ...
> 
> beta $
> beta $ uname -a
> SunOS beta 5.10 Generic_150400-65 sun4u sparc SUNW,SPARC-Enterprise
> beta $ psrinfo -pv
> The physical processor has 8 virtual processors (0-7)
>  SPARC64-VII+ (portid 1024 impl 0x7 ver 0xa1 clock 2860 MHz)
> beta $
> beta $ /usr/bin/time -p /usr/local/bin/gmake
> .
> .
> .
> /opt/developerstudio12.6/bin/cc -D_STDC_C99= -DEXEEXT=\"\"   -I. -I./lib -I. 
> -I./lib -DINSTALLDIR=\"/usr/local/bin\" -I/usr/local/include -D_EXTENSIONS_ 
> -D__EXTENSIONS__ -D_TS_ERRNO -D_POSIX_PTHREAD_SEMANTICS -D_LARGEFILE64_SOURCE 
> -D_REENTRANT   -m64 -xarch=sparc -g -Xa -errfmt=error -erroff=%none 
> -errshort=full -xstrconst -xildoff -xmemalign=8s -xnolibmil -xcode=pic32 
> -xregs=no%appl -xlibmieee -mc -ftrap=%none -xbuiltin=%none -xunroll=1 -xs 
> -xdebugformat=dwarf -errtags=yes -errwarn=%none -D_LARGEFILE64_SOURCE 
> -D_POSIX_PTHREAD_SEMANTICS -D_TS_ERRNO -c -o src/bison-state.o `test -f 
> 'src/state.c' || echo './'`src/state.c
> "./lib/inttypes.h", line 61: #error: "This file assumes that 'int' has 
> exactly 32 bits. Please report your platform and compiler to 
> <address@hidden>."
> cc: acomp failed for src/state.c

Wow.  I will report this to gnulib.  That's a real portability issue.
That was with CC = /opt/developerstudio12.6/bin/cc.


> Let me try again from the top with hard core Oracle Studio C99 compiler
> which is just about as compliant with the specs as anyone could wish
> for.  If software compiles here with C99 then it will compile anywhere
> and that includes your toaster.

My toaster runs with Oracle Java :)



> Let's use the C99 compiler now :
> 
> beta $ echo $CC
> /opt/developerstudio12.6/bin/cc
> beta $ CC=/opt/developerstudio12.6/bin/c99 ; export CC
> beta $
> beta $ ls -lapb /usr/bin/c99
> lrwxrwxrwx   1 root     root          32 May 29  2018 /usr/bin/c99 -> 
> /opt/developerstudio12.6/bin/c99*
> beta $
> 
> Just so you know that c99 is installed in the default PATH as well as in
> the usual /opt location.
> 
> A few trivial adjustments to get to a baseline trivial config :
> 
> beta $ CFLAGS='-m64 -xarch=sparc -g -Xc -errfmt=error -erroff=%none 
> -errshort=full -xstrconst -xildoff -xmemalign=8s -xnolibmil -xcode=pic32 
> -xregs=no%appl -xlibmieee -mc -ftrap=%none -xbuiltin=%none -xunroll=1 -xs 
> -xdebugformat=dwarf -errtags=yes -errwarn=%none'
> beta $ export CFLAGS
> beta $
> beta $ CPPFLAGS='-D_LARGEFILE64_SOURCE -D_POSIX_PTHREAD_SEMANTICS -D_TS_ERRNO'
> beta $ export CPPFLAGS
> beta $ unset EXTRA_CPPFLAGS
> 
> OKay so let's look at what we have here :
> 
> beta $ env | sort | grep -v 'SSH'
> AR=/usr/ccs/bin/ar
> AS=/usr/ccs/bin/as
> AUTOCONF=/usr/local/bin/autoconf
> AUTOHEADER=/usr/local/bin/autoheader
> AUTOMAKE=/usr/local/bin/automake
> AWK=/usr/local/bin/gawk
> BUILD=/usr/local/build
> CC=/opt/developerstudio12.6/bin/c99
> CFLAGS=-m64 -xarch=sparc -g -Xc -errfmt=error -erroff=%none -errshort=full 
> -xstrconst -xildoff -xmemalign=8s -xnolibmil -xcode=pic32 -xregs=no%appl 
> -xlibmieee -mc -ftrap=%none -xbuiltin=%none -xunroll=1 -xs 
> -xdebugformat=dwarf -errtags=yes -errwarn=%none
> COLUMNS=132
> CONFIG_SHELL=/usr/local/bin/bash
> CPPFLAGS=-D_LARGEFILE64_SOURCE -D_POSIX_PTHREAD_SEMANTICS -D_TS_ERRNO
> CXX=/opt/developerstudio12.6/bin/CC
> EDITOR=/usr/xpg6/bin/vi
> GREP=/usr/local/bin/grep
> HOME=/export/home/dclarke
> JAVA_HOME=/usr/jdk/latest
> JRE_HOME=/usr/jdk/latest/jre
> LANG=C
> LC_COLLATE=C
> LC_CTYPE=C
> LC_MESSAGES=C
> LC_MONETARY=C
> LC_NUMERIC=C
> LC_TIME=C
> LD=/usr/ccs/bin/sparcv9/ld
> LDFLAGS=-L/usr/local/lib
> LD_OPTIONS=-64 -R/usr/local/lib -L/usr/local/lib
> LD_RUN_PATH=/usr/local/lib
> LIBTOOL_M4=/usr/local/share/aclocal/libtool.m4
> LINES=43
> LOGNAME=dclarke
> M4=/usr/local/bin/m4
> MACHTYPE=sparc-sun-solaris
> MAIL=/usr/mail/dclarke
> MAKE=/usr/local/bin/gmake
> MANPATH=/usr/local/man:/usr/local/share/man:/usr/share/man:/usr/X11/share/man
> NM=/usr/ccs/bin/sparcv9/nm -p
> OLDPWD=/usr/local/build
> OSTYPE=solaris
> PAGER=/usr/xpg4/bin/more
> PATH=/usr/xpg6/bin:/usr/xpg4/bin:/usr/ccs/bin:/usr/jdk/latest/bin:/opt/developerstudio12.6/bin:/sbin:/bin:/usr/bin:/usr/sbin:/usr/dt/bin:/usr/openwin/bin:/usr/X11/bin:/opt/schily/bin
> PCRE_CONFIG=/usr/local/bin/pcre-config
> PERL=/usr/local/bin/perl
> PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
> PWD=/usr/local/build/bison-3.4.1.5-1dcd6_SunOS5.10_sparc64vii+.002
> SED=/usr/local/bin/sed
> SHELL=/usr/local/bin/bash
> SHLVL=0
> SRC=/usr/local/src
> SSL_CERT_DIR=/usr/local/ssl/certs
> TERM=xterm
> TMPDIR=/var/tmp/dclarke
> TZ=GMT0
> USER=dclarke
> VISUAL=/usr/xpg4/bin/vi
> XTERM_LOCALE=C
> YACC=/usr/local/bin/bison
> _=/usr/xpg4/bin/env
> beta $
> 
> Note that the -Xc in CFLAGS means we want compliance and we mean it and
> yes that means no funny business anywhere. :-)

Good :)


> Some more information just so we know what tools and other GNU stuff I
> have ported here neatly :
> 
> beta $
> beta $ /usr/local/bin/autoconf --version

As you surely know, the autotools are not needed when you start from 
bootstrapped tarball.  They are needed when starting from the repo.

Ok, you have GNU Make, GNU Sed, GNU Awk, and Perl.  All seems right.
Flex is not there, but it should not matter.

> Even reasonable OpenSSL :
> 
> beta $ /usr/local/bin/openssl version
> OpenSSL 1.1.1b  26 Feb 2019

:)

> So let's try again now with ye hardcore C99 :
> 
> beta $
> beta $ ./configure --prefix=/usr/local --disable-silent-rules 
> --enable-dependency-tracking --enable-threads=posix --without-gnu-ld 
> --without-libpth-prefix --with-libiconv-prefix=/usr/local 
> --with-libintl-prefix=/usr/local 2>&1 | tee 
> ../bison-3.4.1.5-1dcd6_SunOS5.10_sparc64vii+.002.config.log
> [,..]
> config.status: executing tests/atconfig commands
> beta $
> 
> Great.
> 
> beta $
> beta $ /usr/bin/time -p /usr/local/bin/gmake
> [...]
> real 49.54
> user 29.20
> sys 9.41
> beta $
> 
> Excellent.
> 
> Brace yer-self :-)

:)

> PASS: examples/c/mfcalc/mfcalc.test
> PASS: examples/c/rpcalc/rpcalc.test
> PASS: examples/c/calc/calc.test
> PASS: examples/java/Calc.test

Good, the examples pass!

Now for the real piece of work...

> ## ----------------------------------- ##
> ## GNU Bison 3.4.1.5-1dcd6 test suite. ##
> ## ----------------------------------- ##
> 
> Input Processing.
> 
>  1: Invalid number of arguments                     ok
>  2: Invalid options                                 ok
>  3: Invalid inputs                                  ok
>  4: Invalid inputs with {}                          ok
>  5: Yacc warnings on symbols                        ok
>  6: Yacc warnings                                   ok
>  7: Invalid symbol declarations                     ok
>  8: Symbol declarations                             ok
>  9: Invalid $n and @n                               ok
> 10: Type Clashes                                    ok
> 
> .
> .
> .
> .   happy happy joy joy good stuff !!!

Yup!


> Tests are running here and the question remains will all this work if
> I were to switch back to XPG4 hard core POSIX bourne shell?

I don't think I depend on much more that $(...) instead of `...` and

case foo in (foo) echo pass;; esac

instead of

case foo in foo) echo pass;; esac


> 450: Many lookahead tokens                           FAILED (torture.at:357)

Weird.  I wonder what happened here.  Maybe something related to memory 
exhaustion, but your boxes seemed to be fully equipped with RAM.

To track this down, I would need the tests/testsuite.log file please.  It 
contains the log of this failure.



> I was working on the TLs v1.3 implementation into Apache httpd last year
> and to that end setup www.tls13.net which, at the time, was the only
> valid tls1.3 protocol site other than a test site at mozilla. It was fun
> hacking along getting httpd to a release status. Some funny issues were
> hit which turned out to be "features" of the new TLS 1.3 protocol and
> the manner in which it shakes hands between client and server. All of
> that ran on these old Solaris boxen and I still have ( I think ) the
> only 64-bit tool chain for Solaris sparc. So I am happy with the results
> but the platform just gets worse and worse for other reasons.

Congratulations :)  Being first at a horserace, riding a brontosaurus
is definitely an achievement :)


> However I have
> these massive monoliths in my life that can do nothing for me. Consider
> an Oracle M4000 server with 256GB of memory ( top end ECC surely ) and a
> deck load of Fujitsu SPARC VII+ processor cores.  Sits at my desk. A
> very large wind storm proof paper weight.

Ouch :(

> Can not run Linux.  Can not
> run FreeBSD.  Can not run a recent Solaris.

Ouch again...

> I also have HP black towers
> Superdomes.  Multiple.  They need 600 volt power and stand seven feet
> tall and do nothing.  Very sad state of affairs for PA-RISC but I know
> there are folks working away on the Linux kernel for PA-RISC so there is
> always hope.

To revive these machines you mean?  The chip itself seems to have no
possible future :(

> My arm and IBM Power systems are great. They run Linux and
> even FreeBSD on IBM Power9 and ppc64 runs well. With ZFS!  I also have
> an eight-cpu RISC-V rv64imafdc vm running with FreeBSD and it also has
> ZFS in there.  However SPARC just gets worse and worse.

I had no idea FreeBSD was used on such large machines.

>>> I think I am qualified to say so.
>>> It has three features : very expensive, very slow, very power hungry and
>>> runs hot as anything you can imagine.  Four.  Four features.
>> :) :) :)
> 
> Hope you spot the Monty Pythin reference.

Darn, no...  Although I do know my flying circus...

Now that you say it, I seem to hear John Cleese say something like
that (have you ever seen his ads for Compaq computers?  You can
find them on YT, you *must* see them), but I don't remember where,
and about what.

I'll do my homework and look for it (I'm offline now).  Thanks for
the (virtual) pointer :)

Cheers!


reply via email to

[Prev in Thread] Current Thread [Next in Thread]