bug-autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

AC_CHECK_FUNCS: invalid test code for g++-3.3


From: Jan Nieuwenhuizen
Subject: AC_CHECK_FUNCS: invalid test code for g++-3.3
Date: 04 Jun 2003 11:30:40 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3

It seems that the AC_CHECK_FUNCS macro of autoconf-2.57 produces
invalid test code for g++ 3.3.

See configure.in and output below.

Jan.


dnl configure.in -*-shell-script-*-

AC_INIT

AC_LANG([C])
AC_PROG_CC
AC_LANG([C++])
AC_PROG_CXX

AC_MSG_NOTICE(`$CC --version`)
$CC --version

unset ac_cv_func_gettext
AC_CHECK_FUNCS(gettext)
AC_LANG_PUSH([C])
unset ac_cv_func_gettext
AC_CHECK_FUNCS(gettext)
AC_LANG_POP([C])

CC=gcc-3.2
CXX=g++-3.2

AC_MSG_NOTICE(`$CC --version`)
$CC --version

unset ac_cv_func_gettext
AC_CHECK_FUNCS(gettext)
AC_LANG_PUSH([C])
unset ac_cv_func_gettext
AC_CHECK_FUNCS(gettext)
AC_LANG_POP([C])

--------------

$ ./configure
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
configure: `gcc --version`
gcc (GCC) 3.3 (Debian)
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There
is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.

checking for gettext... no
checking for gettext... yes
configure: `gcc-3.2 --version`
gcc-3.2 (GCC) 3.2.3 (Debian)
Copyright (C) 2002 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There
is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.

checking for gettext... yes
checking for gettext... yes

--------------

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by configure, which was
generated by GNU Autoconf 2.57.  Invocation command line was

  $ ./configure 

## --------- ##
## Platform. ##
## --------- ##

hostname = peder.flower
uname -m = i686
uname -r = 2.4.20-k7-smp
uname -s = Linux
uname -v = #1 SMP Tue Jan 14 01:09:55 EST 2003
[..]
configure:2433: checking for gettext
configure:2483: g++ -o conftest -g -O2   conftest.cc  >&5
configure:2465: error: nonnull argument with out-of-range operand number (arg 1
   , operand 1)
configure:2486: $? = 1
configure: failed program was:
| #line 2438 "configure"
| /* confdefs.h.  */
| 
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #ifdef __cplusplus
| extern "C" void std::exit (int) throw (); using std::exit;
| #endif
| /* end confdefs.h.  */
| /* System header to define __stub macros and hopefully few prototypes,
|     which can conflict with char gettext (); below.
|     Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
|     <limits.h> exists even on freestanding compilers.  */
| #ifdef __STDC__
| # include <limits.h>
| #else
| # include <assert.h>
| #endif
| /* Override any gcc2 internal prototype to avoid an error.  */
| #ifdef __cplusplus
| extern "C"
| {
| #endif
| /* We use char because int might match the return type of a gcc2
|    builtin and then its argument prototype would still apply.  */
| char gettext ();
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined (__stub_gettext) || defined (__stub___gettext)
| choke me
| #else
| char (*f) () = gettext;
| #endif
| #ifdef __cplusplus
| }
| #endif
| 
| int
| main ()
| {
| return f != gettext;
|   ;
|   return 0;
| }
configure:2503: result: no

-- 
Jan Nieuwenhuizen <address@hidden> | GNU LilyPond - The music typesetter
http://www.xs4all.nl/~jantien       | http://www.lilypond.org





reply via email to

[Prev in Thread] Current Thread [Next in Thread]