This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Provide Solaris 11 buildbots


On Wednesday, September 26 2018, Rainer Orth wrote:

> Hi Sergio,
>
>>> On Monday, September 24 2018, Rainer Orth wrote:
>>>> it seems we managed to mess up the configure flags badly here: right now
>>>> the buildbots are configured with just CFLAGS/CXXFLAGS=-m64, nothing
>>>> more.  I hope the following patch should fix things:
>>>
>>> Ah, OK.  I may have misunderstood the patch/requirements.  I've now
>>> simplified the configuration.
>>>
>>>> * There's no need for disable_default_compilation_flags = True: the
>>>>   default works just fine, we only need to add -O at the moment.  Isn't
>>>>   it enough to do this once in RunTestGDBSolaris_Common?
>>>
>>> Yeah, it should be.
>>>
>>>> * Obviously the -m64 needs to be appended in RunTestGDBPlainSolaris_c64
>>>>   to both CFLAGS and CXXFLAGS to avoid losing the -O above.
>>>
>>> Yeah.
>>>
>>>> * Not in the patch, but wouldn't it be enough to set enable_targets_all,
>>>>   make_command, and run_testsuite only once in RunTestGDBSolaris_Common?
>>>
>>> It turned out to be a bit more complicated.  I'm in a hurry right now,
>>> so I did a quick hack to make it work.  I'll monitor the next builds.
>>
>> After this, the builds started to pass.  Thanks for bringing this to my
>> attention, Rainer.
>>
>> I'll enable the email notifications for both builders later today.
>
> excellent, thanks.
>
> I had a look at the current set of build warnings and wondered what (if
> any) to do about them:
>
> ../../binutils-gdb/libiberty/pex-unix.c:612:7: warning: ‘vfork’ is deprecated [-Wdeprecated-declarations]
>
> Solaris 11 has deprecated vfork.  vfork(2) suggests to replace uses by
> posix_spawn or posix_spawnp, but this is something to take up with the
> libiberty maintainers.

Yes, you should get in touch with the GCC/libiberty maintainers.

> checking whether a statically linked program can dlopen itself... Setting warning flags = -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wstack-usage=262144 -Werror
> Setting warning flags = -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wstack-usage=262144 -Werror
> checking compiler warning flags...  -Wall -Wpointer-arith -Wno-unused
> -Wunused-value -Wunused-variable -Wunused-function -Wno-switch
> -Wno-char-subscripts -Wempty-body -Wunused-but-set-parameter
> -Wunused-but-set-variable -Wno-sign-compare
> -Wno-error=maybe-uninitialized -Wsuggest-override
> -Wimplicit-fallthrough=3 -Wduplicated-cond -Wno-unknown-pragmas
> -Wno-deprecated-declarations -Werror
>
> Those are all spurious, sometimes two different lines running into each
> other.

This happens because of the parallel build.

>  They are also present on Fedora, e.g.
>
> /opt/gdb-buildbot/home/solaris11-sparcv9/solaris11-sparcv9-m64/build/gdb/../../binutils-gdb/gdb/c-exp.y: warning: 42 shift/reduce conflicts [-Wconflicts-sr]
> /opt/gdb-buildbot/home/solaris11-sparcv9/solaris11-sparcv9-m64/build/gdb/../../binutils-gdb/gdb/c-exp.y: warning: 53 reduce/reduce conflicts [-Wconflicts-rr]
> /opt/gdb-buildbot/home/solaris11-sparcv9/solaris11-sparcv9-m64/build/gdb/../../binutils-gdb/gdb/m2-exp.y: warning: 34 shift/reduce conflicts [-Wconflicts-sr]
> /opt/gdb-buildbot/home/solaris11-sparcv9/solaris11-sparcv9-m64/build/gdb/../../binutils-gdb/gdb/m2-exp.y:301.25-44: warning: rule useless in parser due to conflicts [-Wother]
>
> Those are from the bundled bison 3.0.4 and again also present on
> Fedora.  One could silence them with -Wno-conflicts-sr if need be, but
> that would require testing if the yacc/bison used supports those
> options.
>
> bison 2.4.2 only emits
>
> conflicts: 42 shift/reduce, 53 reduce/reduce
> conflicts: 34 shift/reduce

They happen on pretty much every builder.  I personally don't think
these should be silenced.

> ../../binutils-gdb/gdb/coffread.c:1104:36: warning: ‘newobj’ may be used uninitialized in this function [-Wmaybe-uninitialized]
>
> Seems legit.

Should be easy to fix.

> ../../binutils-gdb/gdb/inferior.h:567:26: warning: ‘*((void*)(&
> maybe_restore_inferior)+40).scoped_restore_current_inferior::m_saved_inf’
> may be used uninitialized in this function [-Wmaybe-uninitialized]
> ../../binutils-gdb/gdb/progspace.h:285:31: warning: ‘*((void*)(&
> maybe_restore_inferior)+32).scoped_restore_current_program_space::m_saved_pspace’
> may be used uninitialized in this function [-Wmaybe-uninitialized]
> ../../binutils-gdb/gdb/ui-out.h:197:18: warning: ‘asm_list.ui_out_emit_type<(ui_out_type)1>::m_uiout’ may be used uninitialized in this function [-Wmaybe-uninitialized]
>
> Those three could be legit, but I cannot tell.  I suspect they don't
> occur on other builders because they use older gcc versions (e.g. gcc
> 4.8) while the Solaris builders use gcc 7.3.

ISTR seeing these in other builders as well.  If I'm not mistaken, they
have to do with a GCC issue about std::optional or some such.

-- 
Sergio
GPG key ID: 237A 54B1 0287 28BF 00EF  31F4 D0EB 7628 65FC 5E36
Please send encrypted e-mail if possible
http://sergiodj.net/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]