This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: glibc 2.18 rt/tst-mqueue4.c compilation error
- From: Olivier Langlois <olivier at olivierlanglois dot net>
- To: Roland McGrath <roland at hack dot frob dot com>
- Cc: libc-alpha at sourceware dot org
- Date: Fri, 04 Oct 2013 01:32:00 -0400
- Subject: Re: glibc 2.18 rt/tst-mqueue4.c compilation error
- Authentication-results: sourceware.org; auth=none
- References: <1379390986 dot 1849 dot 33 dot camel at Wailaba2> <20130924231954 dot 663692C099 at topped-with-meat dot com>
Roland,
I did reproduce the problem:
gcc -fstack-protector -D_FORTIFY_SOURCE=2 tst-mqueue4.c -c -std=gnu99
-fgnu89-inline --param=ssp-buffer-size=4 -O3 -Wall -Winline
-Wwrite-strings -fmerge-all-constants -frounding-math -march=native
-pipe -Wstrict-prototypes -I../include
-I/home/lano1106/dev/glibc/src/glibc-build/rt
-I/home/lano1106/dev/glibc/src/glibc-build
-I../sysdeps/unix/sysv/linux/x86_64/64/nptl
-I../sysdeps/unix/sysv/linux/x86_64/64
-I../nptl/sysdeps/unix/sysv/linux/x86_64
-I../nptl/sysdeps/unix/sysv/linux/x86 -I../sysdeps/unix/sysv/linux/x86
-I../sysdeps/unix/sysv/linux/x86_64
-I../sysdeps/unix/sysv/linux/wordsize-64
-I../nptl/sysdeps/unix/sysv/linux -I../nptl/sysdeps/pthread
-I../sysdeps/pthread -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu
-I../sysdeps/unix/inet -I../nptl/sysdeps/unix/sysv
-I../sysdeps/unix/sysv -I../sysdeps/unix/x86_64 -I../nptl/sysdeps/unix
-I../sysdeps/unix -I../sysdeps/posix -I../nptl/sysdeps/x86_64/64
-I../sysdeps/x86_64/64 -I../sysdeps/x86_64/fpu/multiarch
-I../sysdeps/x86_64/fpu -I../sysdeps/x86/fpu
-I../sysdeps/x86_64/multiarch -I../nptl/sysdeps/x86_64
-I../sysdeps/x86_64 -I../sysdeps/x86 -I../sysdeps/ieee754/ldbl-96
-I../sysdeps/ieee754/dbl-64/wordsize-64 -I../sysdeps/ieee754/dbl-64
-I../sysdeps/ieee754/flt-32 -I../sysdeps/wordsize-64
-I../sysdeps/ieee754 -I../sysdeps/generic -I../nptl -I.. -I../libio
-I. -nostdinc
-isystem /usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/include
-isystem /usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1/include-fixed
-isystem /usr/include -D_LIBC_REENTRANT
-include ../include/libc-symbols.h -DNOT_IN_libc=1
-o /home/lano1106/dev/glibc/src/glibc-build/rt/tst-mqueue4.o -MD -MP
-MF /home/lano1106/dev/glibc/src/glibc-build/rt/tst-mqueue4.o.dt
-MT /home/lano1106/dev/glibc/src/glibc-build/rt/tst-mqueue4.o
In file included from ../rt/mqueue.h:95:0,
from ../include/mqueue.h:1,
from tst-mqueue4.c:22:
In function âmq_openâ,
inlined from âdo_testâ at tst-mqueue4.c:174:6:
./bits/mqueue2.h:41:36: error: call to â__mq_open_wrong_number_of_argsâ
declared with attribute error: mq_open can be called either with 2 or 4
arguments
__mq_open_wrong_number_of_args ();
^
In function âmq_openâ,
inlined from âdo_testâ at tst-mqueue4.c:181:9:
./bits/mqueue2.h:41:36: error: call to â__mq_open_wrong_number_of_argsâ
declared with attribute error: mq_open can be called either with 2 or 4
arguments
__mq_open_wrong_number_of_args ();
^
On Tue, 2013-09-24 at 16:19 -0700, Roland McGrath wrote:
> Exact compiler output is essential when reporting any build bug, of course.
>
> It seems likely that what changed is that you started building the tests
> with _FORTIFY_SOURCE. That should not happen in the normal libc build.
> So we should figure out how it came about for you and clear that up.
>
> Separately, as part of the long-run plan to build tests in more user-like
> environments, we should eventually build most of our tests in three
> variants for no _FORTIFY_SOURCE, _FORTIFY_SOURCE=1, and _FORTIFY_SOURCE=2.
> As the bugs in this test are wholly harmless (an excess unused argument),
> let's leave them in there to pop out when we eventually do increase the
> range of testing to cover _FORTIFY_SOURCE contexts.
>
> In the meantime, please try to reproduce your situation and submit adequate
> details about how it came about.
>
>
> Thanks,
> Roland
>