Michael Felt <aixto...@felt.demon.nl> added the comment:

Actually, iirc - xlc is c99 plus a few extra settings.

The configuration files for xlc are, traditionally, in /etc (the later
versions of the compiler have moved them into /opt/show/where so that
multiple versions of the compiler can be installed.

buildbot@x064:[/home/buildbot]ls -l /etc/*vac*
-rw-r--r--    1 bin      bin           37731 Aug 02 2018  /etc/vac.cfg.53
-rw-r--r--    1 bin      bin           39672 Aug 02 2018  /etc/vac.cfg.61
-rw-r--r--    1 bin      bin           39681 Aug 02 2018  /etc/vac.cfg.71
-rw-r--r--    1 bin      bin           39611 Aug 02 2018  /etc/vac.cfg.72

Herein I see that xlc is "extc99" and some extras:

* -qlanglvl=extc99 C compiler with common extensions, UNIX headers
xlc:    use        = DEFLT_C
        crt        = /lib/crt0.o
        mcrt       = /lib/mcrt0.o
        gcrt       = /lib/gcrt0.o
        libraries  = -L/usr/vac/lib,-lxlopt,-lxlipa,-lxl,-lc
        proflibs   = -L/lib/profiled,-L/usr/lib/profiled
        options    =
-qlanglvl=extc99,-qcpluscmt,-qkeyword=inline,-qalias=ansi

I have chosen the xlc_r variant - for thread_safe additions:

* standard c compiler aliased as xlc_r (61 Threads)
xlc_r:  use        = DEFLT_C
        crt        = /lib/crt0.o
        mcrt       = /lib/mcrt0.o
        gcrt       = /lib/gcrt0.o
        libraries  = -L/usr/vac/lib,-lxlopt,-lxlipa,-lxl,-lpthreads,-lc
        proflibs   = -L/lib/profiled,-L/usr/lib/profiled
        hdlibs     = -L/usr/vac/lib,-lhmd
        options    =
-qlanglvl=extc99,-qcpluscmt,-qkeyword=inline,-qalias=ansi,-qthreaded,-D_THREAD_SAFE,-D__VACPP_MULTI__

So, what is c99 then? -> focus on it is 'stdc99' rather than 'extc99'

* Strict ANSI compiler, ANSI headers
c99:    use        = DEFLT_C
        crt        = /lib/crt0.o
        mcrt       = /lib/mcrt0.o
        gcrt       = /lib/gcrt0.o
        libraries  = -L/usr/vac/lib,-lxlopt,-lxlipa,-lxl,-lc
        proflibs   = -L/lib/profiled,-L/usr/lib/profiled
        options    =
-qlanglvl=stdc99,-D_ANSI_C_SOURCE,-D_ISOC99_SOURCE,-qalias=ansi,-qstrict_induction

Hope this helps clarify that both xlc and c99 are "c99" based.

Regards,

Michael

On 05/06/2020 21:34, Stefan Krah wrote:
> New submission from Stefan Krah <ste...@bytereef.org>:
>
> There appears to be an xlc buildbot with libmpdec failures.
>
> libmpdec uses C99 extern inline semantics. From the brief period that I had 
> access to xlc I remember that xlc was quite picky about C99.
>
> Actually all of Python uses C99. So I think xlc_r needs to be invoked as 
> c99_r.
>
> ----------
> messages: 370779
> nosy: Michael.Felt, skrah
> priority: normal
> severity: normal
> status: open
> title: Use c99 on the aixtools bot
>
> _______________________________________
> Python tracker <rep...@bugs.python.org>
> <https://bugs.python.org/issue40878>
> _______________________________________
>

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue40878>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to