[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris
From: |
Joel E. Denny |
Subject: |
Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12 |
Date: |
Tue, 20 Apr 2010 00:46:32 -0400 (EDT) |
User-agent: |
Alpine 1.00 (DEB 882 2007-12-20) |
On Thu, 15 Apr 2010, Eric Blake wrote:
> On 04/15/2010 03:39 PM, Joel E. Denny wrote:
> > % cat > tmp.cc
> > #define __EXTENSIONS__ 1
> > #include <unistd.h>
> > #include <getopt.h>
> > % CC -I/opt/csw/include tmp.cc
> > "/opt/csw/include/getopt.h", line 122: Error: Only one of a set of
> > overloaded functions can be extern "C".
> > 1 Error(s) detected.
> > % CC -V
> > CC: Sun C++ 5.9 SunOS_sparc Patch 124863-19 2009/12/02
> > The trouble is that, because of the __EXTENSIONS__ definition,
> > /usr/include/unistd.h defines getopt with a different prototype than does
> > /opt/csw/include/getopt.h.
>
> It would be helpful if you could show the getopt() declarations in both
> headers, and enough context (like how __EXTENSIONS__ affects
> <unistd.h>), for comparison.
>From /usr/include/unistd.h:
------------------------------
#if defined(__STDC__)
...
#if (defined(_XOPEN_SOURCE) && (_XOPEN_VERSION - 0 >= 4)) || \
defined(__EXTENSIONS__)
extern int getopt(int, char *const *, const char *);
...
#endif /* (defined(_XOPEN_SOURCE) && (_XOPEN_VERSION - 0 >= 4))... */
...
#else /* __STDC__ */
...
#if (!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) || \
defined(_XPG4_2) || defined(__EXTENSIONS__)
#if (defined(_XOPEN_SOURCE) && (_XOPEN_VERSION - 0 >= 4)) || \
defined(__EXTENSIONS__)
extern int getopt();
...
#endif /* (defined(_XOPEN_SOURCE) && (_XOPEN_VERSION - 0 >= 4))... */
...
#endif /* (!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE))... */
------------------------------
>From /opt/csw/include/getopt.h:
------------------------------
#if defined (__STDC__) && __STDC__
#ifdef __GNU_LIBRARY__
/* Many other libraries have conflicting prototypes for getopt, with
differences in the consts, in stdlib.h. To avoid compilation
errors, only prototype getopt for the GNU C library. */
extern int getopt (int argc, char *const *argv, const char *shortopts);
#else /* not __GNU_LIBRARY__ */
extern int getopt ();
#endif /* __GNU_LIBRARY__ */
...
#else /* not __STDC__ */
extern int getopt (); <---------- line 122, where the error is reported
...
endif /* __STDC__ */
------------------------------
To see why these headers select a different getopt prototype:
% cat tmp.cc
__STDC__
% CC -E tmp.cc
#1 "tmp.cc"
0
In contrast:
% g++ -E tmp.cc
# 1 "tmp.cc"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "tmp.cc"
1
> Is there anything else in /opt/csw/include that Dago really wants to
> use?
He'll have to answer that.
On Fri, 16 Apr 2010, Eric Blake wrote:
> I've done some more testing. It turns out that gnulib _correctly_
> rejects /opt/csw/include/getopt.h as incompatible with the current
> compiler,
But CC reports the error as being in that file.
> if you use autoconf 2.64 (prior to that, if the existence and
> compilation checks disagree, autoconf went with the existence check).
We are using autoconf 2.65.
> The errors I'm seeing are due to the fact that Dagobert is using CC, not
> cc
To be clear, Dago is simply running the bison test suite, which requires a
C++ compiler.
> So I'm working on some patches to allow clean C++ compilation of getopt
> (even if they won't be accepted upstream in glibc); and with luck, that
> will also fix Dagobert's problem with CC.
I updated gnulib to 2f3175, but the failure remains the same for bison.
Is there any more information we can provide?
Thanks.
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, (continued)
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Joel E. Denny, 2010/04/11
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Dagobert Michelsen, 2010/04/11
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Joel E. Denny, 2010/04/11
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Dagobert Michelsen, 2010/04/12
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Joel E. Denny, 2010/04/15
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Eric Blake, 2010/04/15
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Bruno Haible, 2010/04/15
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Paolo Bonzini, 2010/04/16
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Bruno Haible, 2010/04/16
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Eric Blake, 2010/04/16
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12,
Joel E. Denny <=
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Dagobert Michelsen, 2010/04/20
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Eric Blake, 2010/04/20
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Joel E. Denny, 2010/04/20
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Eric Blake, 2010/04/20
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Joel E. Denny, 2010/04/20
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Paolo Bonzini, 2010/04/21
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Joel E. Denny, 2010/04/22
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Dagobert Michelsen, 2010/04/25
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Bruno Haible, 2010/04/25
- Re: [GNU Bison 2.4.2] testsuite: Failing tests of bison 2.4.2 on Solaris 8+9 w/Sun Studio 11+12, Joel E. Denny, 2010/04/26