This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC 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]

Someone introduced a libiberty crashing bug in the past week


that is masked by the structure aliasing changes.

We currently ICE in libiberty's configure script checking in
do_structure_copy checking for usability of sys/wait.h, so it thinks it
failed and goes about it's merry way.

However, with that bug fixed, so tthat the detection works, we now crash
compiling pex-unix.i with -pedantic.

#0  0x0807938b in convert_for_assignment (type=0x402c6a8c,
rhs=0x402d6654, errtype=ic_argpass, fundecl=0x0, function=0x402ce1b0,
parmnum=2)
    at c-typeck.c:3729
#1  0x08073717 in convert_arguments (typelist=0x402c9480,
values=0x402d8060, function=0x402ce1b0, fundecl=0x0) at c-typeck.c:2265
#2  0x080729c8 in build_function_call (function=0x4029a980,
params=0x402d8060) at c-typeck.c:2062
#3  0x080c5e16 in c_parser_postfix_expression_after_primary
(parser=0x4014a120, expr={value = 0x402ce1b0, original_code =
ERROR_MARK})
    at c-parser.c:5247


The crash line is 
3729              if (pedantic && !DECL_IN_SYSTEM_HEADER (fundecl))

Here, fundecl is null.

Along the above backtrace, i can't see where fundecl is set to non-null

It is psased to convert_for_assignment by convert_arguments
It is passed to convert_arguments by build_function_call.

Build_function_call inits it to NULL at the top of the function.

I see nothing in build_function_call that ever sets fundecl to non-zero
before calling convert_arguments.

This is new, i assume.

This is blocking me fixing the structure aliasing regressions.

I've attached pex-unix.i. Compile with -pendantic to see the crash.

If nobody fixes this soon, i'll simply add a null check for the warning
as a temporary measure so we can fix the structure aliasing bugs and
file a bugzilla report.

--Dan

Attachment: pex-unix.i
Description: Text document


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