4517 lines
151 KiB
Plaintext
4517 lines
151 KiB
Plaintext
This file contains any messages produced by compilers while
|
|
running configure, to aid debugging if configure makes a mistake.
|
|
|
|
It was created by SystemC configure 2.3.4, which was
|
|
generated by GNU Autoconf 2.71. Invocation command line was
|
|
|
|
$ ../configure CXXFLAGS=-D_GLIBCXX_USE_CXX11_ABI=1 CXX=g++ --no-create --no-recursion
|
|
|
|
## --------- ##
|
|
## Platform. ##
|
|
## --------- ##
|
|
|
|
hostname = 98ec94af8abc
|
|
uname -m = x86_64
|
|
uname -r = 4.18.0-553.el8_10.x86_64
|
|
uname -s = Linux
|
|
uname -v = #1 SMP Fri May 24 08:32:12 EDT 2024
|
|
|
|
/usr/bin/uname -p = x86_64
|
|
/bin/uname -X = unknown
|
|
|
|
/bin/arch = x86_64
|
|
/usr/bin/arch -k = unknown
|
|
/usr/convex/getsysinfo = unknown
|
|
/usr/bin/hostinfo = unknown
|
|
/bin/machine = unknown
|
|
/usr/bin/oslevel = unknown
|
|
/bin/universe = unknown
|
|
|
|
PATH: /usr/local/sbin/
|
|
PATH: /usr/local/bin/
|
|
PATH: /usr/sbin/
|
|
PATH: /usr/bin/
|
|
PATH: /sbin/
|
|
PATH: /bin/
|
|
PATH: /home/user1/env/miniconda3/bin/
|
|
|
|
|
|
## ----------- ##
|
|
## Core tests. ##
|
|
## ----------- ##
|
|
|
|
configure:2792: looking for aux files: ltmain.sh ar-lib compile missing install-sh config.guess config.sub
|
|
configure:2805: trying ../config/
|
|
configure:2834: ../config/ltmain.sh found
|
|
configure:2834: ../config/ar-lib found
|
|
configure:2834: ../config/compile found
|
|
configure:2834: ../config/missing found
|
|
configure:2816: ../config/install-sh found
|
|
configure:2834: ../config/config.guess found
|
|
configure:2834: ../config/config.sub found
|
|
configure:2959: checking build system type
|
|
configure:2974: result: x86_64-unknown-linux-gnu
|
|
configure:2994: checking host system type
|
|
configure:3008: result: x86_64-unknown-linux-gnu
|
|
configure:3028: checking target system type
|
|
configure:3042: result: x86_64-unknown-linux-gnu
|
|
configure:3086: checking for a BSD-compatible install
|
|
configure:3159: result: /usr/bin/install -c
|
|
configure:3170: checking whether build environment is sane
|
|
configure:3225: result: yes
|
|
configure:3384: checking for a race-free mkdir -p
|
|
configure:3428: result: /usr/bin/mkdir -p
|
|
configure:3435: checking for gawk
|
|
configure:3470: result: no
|
|
configure:3435: checking for mawk
|
|
configure:3456: found /usr/bin/mawk
|
|
configure:3467: result: mawk
|
|
configure:3478: checking whether make sets $(MAKE)
|
|
configure:3501: result: yes
|
|
configure:3531: checking whether make supports nested variables
|
|
configure:3549: result: yes
|
|
configure:3619: checking how to create a pax tar archive
|
|
configure:3630: tar --version
|
|
tar (GNU tar) 1.34
|
|
Copyright (C) 2021 Free Software Foundation, Inc.
|
|
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
|
|
This is free software: you are free to change and redistribute it.
|
|
There is NO WARRANTY, to the extent permitted by law.
|
|
|
|
Written by John Gilmore and Jay Fenlason.
|
|
configure:3633: $? = 0
|
|
configure:3673: tardir=conftest.dir && eval tar --format=posix -chf - "$tardir" >conftest.tar
|
|
configure:3676: $? = 0
|
|
configure:3680: tar -xf - <conftest.tar
|
|
configure:3683: $? = 0
|
|
configure:3685: cat conftest.dir/file
|
|
GrepMe
|
|
configure:3688: $? = 0
|
|
configure:3702: result: gnutar
|
|
configure:3779: checking whether make supports nested variables
|
|
configure:3797: result: yes
|
|
configure:3941: checking for C++ compiler version
|
|
configure:3950: g++ --version >&5
|
|
g++ (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0
|
|
Copyright (C) 2021 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.
|
|
|
|
configure:3961: $? = 0
|
|
configure:3950: g++ -v >&5
|
|
Using built-in specs.
|
|
COLLECT_GCC=g++
|
|
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper
|
|
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
|
|
OFFLOAD_TARGET_DEFAULT=1
|
|
Target: x86_64-linux-gnu
|
|
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04.3' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-0odw26/gcc-11-11.4.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-0odw26/gcc-11-11.4.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
|
|
Thread model: posix
|
|
Supported LTO compression algorithms: zlib zstd
|
|
gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04.3)
|
|
... rest of stderr output deleted ...
|
|
configure:3961: $? = 0
|
|
configure:3950: g++ -V >&5
|
|
g++: error: unrecognized command-line option '-V'
|
|
g++: fatal error: no input files
|
|
compilation terminated.
|
|
configure:3961: $? = 1
|
|
configure:3950: g++ -qversion >&5
|
|
g++: error: unrecognized command-line option '-qversion'; did you mean '--version'?
|
|
g++: fatal error: no input files
|
|
compilation terminated.
|
|
configure:3961: $? = 1
|
|
configure:3981: checking whether the C++ compiler works
|
|
configure:4003: g++ -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:4007: $? = 0
|
|
configure:4057: result: yes
|
|
configure:4060: checking for C++ compiler default output file name
|
|
configure:4062: result: a.out
|
|
configure:4068: checking for suffix of executables
|
|
configure:4075: g++ -o conftest -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:4079: $? = 0
|
|
configure:4102: result:
|
|
configure:4124: checking whether we are cross compiling
|
|
configure:4132: g++ -o conftest -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:4136: $? = 0
|
|
configure:4143: ./conftest
|
|
configure:4147: $? = 0
|
|
configure:4162: result: no
|
|
configure:4167: checking for suffix of object files
|
|
configure:4190: g++ -c -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:4194: $? = 0
|
|
configure:4216: result: o
|
|
configure:4220: checking whether the compiler supports GNU C++
|
|
configure:4240: g++ -c -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:4240: $? = 0
|
|
configure:4250: result: yes
|
|
configure:4261: checking whether g++ accepts -g
|
|
configure:4282: g++ -c -g conftest.cpp >&5
|
|
configure:4282: $? = 0
|
|
configure:4326: result: yes
|
|
configure:4346: checking for g++ option to enable C++11 features
|
|
configure:4361: g++ -c -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
conftest.cpp: In function 'int main(int, char**)':
|
|
conftest.cpp:175:25: warning: empty parentheses were disambiguated as a function declaration [-Wvexing-parse]
|
|
175 | cxx11test::delegate d2();
|
|
| ^~
|
|
conftest.cpp:175:25: note: remove parentheses to default-initialize a variable
|
|
175 | cxx11test::delegate d2();
|
|
| ^~
|
|
| --
|
|
conftest.cpp:175:25: note: or replace parentheses with braces to value-initialize a variable
|
|
configure:4361: $? = 0
|
|
configure:4379: result: none needed
|
|
configure:4446: checking whether make supports the include directive
|
|
configure:4461: make -f confmf.GNU && cat confinc.out
|
|
make[1]: Entering directory '/home/common_share/systemc/objdir'
|
|
make[1]: Leaving directory '/home/common_share/systemc/objdir'
|
|
this is the am__doit target
|
|
configure:4464: $? = 0
|
|
configure:4483: result: yes (GNU style)
|
|
configure:4509: checking dependency style of g++
|
|
configure:4621: result: gcc3
|
|
configure:4640: checking whether we are using a Clang/LLVM C++ compiler
|
|
configure:4667: g++ -c -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
conftest.cpp: In function 'int main()':
|
|
conftest.cpp:15:5: error: 'clang' was not declared in this scope
|
|
15 | not clang
|
|
| ^~~~~
|
|
configure:4667: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| int
|
|
| main (void)
|
|
| {
|
|
|
|
|
| #ifndef __clang__
|
|
| not clang
|
|
| #endif
|
|
|
|
|
| ;
|
|
| return 0;
|
|
| }
|
|
configure:4681: result: no
|
|
configure:4747: checking for gcc
|
|
configure:4779: result: g++
|
|
configure:5132: checking for C compiler version
|
|
configure:5141: g++ --version >&5
|
|
g++ (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0
|
|
Copyright (C) 2021 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.
|
|
|
|
configure:5152: $? = 0
|
|
configure:5141: g++ -v >&5
|
|
Using built-in specs.
|
|
COLLECT_GCC=g++
|
|
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper
|
|
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
|
|
OFFLOAD_TARGET_DEFAULT=1
|
|
Target: x86_64-linux-gnu
|
|
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.4.0-1ubuntu1~22.04.3' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-0odw26/gcc-11-11.4.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-0odw26/gcc-11-11.4.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
|
|
Thread model: posix
|
|
Supported LTO compression algorithms: zlib zstd
|
|
gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04.3)
|
|
... rest of stderr output deleted ...
|
|
configure:5152: $? = 0
|
|
configure:5141: g++ -V >&5
|
|
g++: error: unrecognized command-line option '-V'
|
|
g++: fatal error: no input files
|
|
compilation terminated.
|
|
configure:5152: $? = 1
|
|
configure:5141: g++ -qversion >&5
|
|
g++: error: unrecognized command-line option '-qversion'; did you mean '--version'?
|
|
g++: fatal error: no input files
|
|
compilation terminated.
|
|
configure:5152: $? = 1
|
|
configure:5141: g++ -version >&5
|
|
g++: error: unrecognized command-line option '-version'
|
|
g++: fatal error: no input files
|
|
compilation terminated.
|
|
configure:5152: $? = 1
|
|
configure:5156: checking whether the compiler supports GNU C
|
|
configure:5176: g++ -c conftest.c >&5
|
|
configure:5176: $? = 0
|
|
configure:5186: result: yes
|
|
configure:5197: checking whether g++ accepts -g
|
|
configure:5218: g++ -c -g conftest.c >&5
|
|
configure:5218: $? = 0
|
|
configure:5262: result: yes
|
|
configure:5282: checking for g++ option to enable C11 features
|
|
configure:5297: g++ -c conftest.c >&5
|
|
conftest.c:61:3: error: #error "Compiler does not advertise C99 conformance"
|
|
61 | # error "Compiler does not advertise C99 conformance"
|
|
| ^~~~~
|
|
conftest.c:165:3: error: #error "Compiler does not advertise C11 conformance"
|
|
165 | # error "Compiler does not advertise C11 conformance"
|
|
| ^~~~~
|
|
conftest.c:23:17: error: 'p' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:20: error: 'i' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:21: error: expression list treated as compound expression in initializer [-fpermissive]
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:26:1: error: expected unqualified-id before '{' token
|
|
26 | {
|
|
| ^
|
|
conftest.c:116:29: error: expected ',' or '...' before 'text'
|
|
116 | test_restrict (ccp restrict text)
|
|
| ^~~~
|
|
conftest.c: In function 'int test_restrict(ccp)':
|
|
conftest.c:121:30: error: 'text' was not declared in this scope; did you mean 'test'?
|
|
121 | for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| ^~~~
|
|
| test
|
|
conftest.c: At global scope:
|
|
conftest.c:169:24: error: expected initializer before 'aligned_as_double'
|
|
169 | char _Alignas (double) aligned_as_double;
|
|
| ^~~~~~~~~~~~~~~~~
|
|
conftest.c:170:19: error: expected ',' or ';' before 'no_special_alignment'
|
|
170 | char _Alignas (0) no_special_alignment;
|
|
| ^~~~~~~~~~~~~~~~~~~~
|
|
conftest.c:172:6: error: redefinition of 'char _Alignas'
|
|
172 | char _Alignas (0) _Alignas (int) aligned_as_int;
|
|
| ^~~~~~~~
|
|
conftest.c:170:6: note: 'char _Alignas' previously defined here
|
|
170 | char _Alignas (0) no_special_alignment;
|
|
| ^~~~~~~~
|
|
conftest.c:177:29: error: expected primary-expression before 'int'
|
|
177 | int_alignment = _Alignof (int),
|
|
| ^~~
|
|
conftest.c:177:19: error: '_Alignof' was not declared in this scope; did you mean '_Alignas'?
|
|
177 | int_alignment = _Alignof (int),
|
|
| ^~~~~~~~
|
|
| _Alignas
|
|
conftest.c:178:35: error: expected primary-expression before 'int'
|
|
178 | int_array_alignment = _Alignof (int[100]),
|
|
| ^~~
|
|
conftest.c:178:25: error: '_Alignof' was not declared in this scope; did you mean '_Alignas'?
|
|
178 | int_array_alignment = _Alignof (int[100]),
|
|
| ^~~~~~~~
|
|
| _Alignas
|
|
conftest.c:179:30: error: expected primary-expression before 'char'
|
|
179 | char_alignment = _Alignof (char)
|
|
| ^~~~
|
|
conftest.c:179:20: error: '_Alignof' was not declared in this scope; did you mean '_Alignas'?
|
|
179 | char_alignment = _Alignof (char)
|
|
| ^~~~~~~~
|
|
| _Alignas
|
|
conftest.c:181:16: error: expected constructor, destructor, or type conversion before '(' token
|
|
181 | _Static_assert (0 < -_Alignof (int), "_Alignof is signed");
|
|
| ^
|
|
conftest.c:184:15: error: expected initializer before 'does_not_return'
|
|
184 | int _Noreturn does_not_return (void) { for (;;) continue; }
|
|
| ^~~~~~~~~~~~~~~
|
|
conftest.c:190:19: error: expected identifier before 'sizeof'
|
|
190 | _Static_assert (sizeof (int) <= sizeof (long int),
|
|
| ^~~~~~
|
|
conftest.c:190:19: error: expected ',' or '...' before 'sizeof'
|
|
conftest.c:190:3: error: ISO C++ forbids declaration of '_Static_assert' with no type [-fpermissive]
|
|
190 | _Static_assert (sizeof (int) <= sizeof (long int),
|
|
| ^~~~~~~~~~~~~~
|
|
conftest.c: In function 'int main(int, char**)':
|
|
conftest.c:220:24: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
220 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:220:53: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
220 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:230:18: error: expected initializer before 'newvar'
|
|
230 | char *restrict newvar = "Another string";
|
|
| ^~~~~~
|
|
conftest.c:238:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive]
|
|
238 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
| |
|
|
| void*
|
|
conftest.c:257:58: error: 'newvar' was not declared in this scope
|
|
257 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| ^~~~~~
|
|
conftest.c:261:3: error: '_Static_assert' was not declared in this scope; did you mean 'static_assert'?
|
|
261 | _Static_assert ((offsetof (struct anonymous, i)
|
|
| ^~~~~~~~~~~~~~
|
|
| static_assert
|
|
configure:5297: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| // Does the compiler advertise C99 conformance?
|
|
| #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
|
|
| # error "Compiler does not advertise C99 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stdbool.h>
|
|
| extern int puts (const char *);
|
|
| extern int printf (const char *, ...);
|
|
| extern int dprintf (int, const char *, ...);
|
|
| extern void *malloc (size_t);
|
|
|
|
|
| // Check varargs macros. These examples are taken from C99 6.10.3.5.
|
|
| // dprintf is used instead of fprintf to avoid needing to declare
|
|
| // FILE and stderr.
|
|
| #define debug(...) dprintf (2, __VA_ARGS__)
|
|
| #define showlist(...) puts (#__VA_ARGS__)
|
|
| #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
|
|
| static void
|
|
| test_varargs_macros (void)
|
|
| {
|
|
| int x = 1234;
|
|
| int y = 5678;
|
|
| debug ("Flag");
|
|
| debug ("X = %d\n", x);
|
|
| showlist (The first, second, and third items.);
|
|
| report (x>y, "x is %d but y is %d", x, y);
|
|
| }
|
|
|
|
|
| // Check long long types.
|
|
| #define BIG64 18446744073709551615ull
|
|
| #define BIG32 4294967295ul
|
|
| #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
|
|
| #if !BIG_OK
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| #if BIG_OK
|
|
| #else
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| static long long int bignum = -9223372036854775807LL;
|
|
| static unsigned long long int ubignum = BIG64;
|
|
|
|
|
| struct incomplete_array
|
|
| {
|
|
| int datasize;
|
|
| double data[];
|
|
| };
|
|
|
|
|
| struct named_init {
|
|
| int number;
|
|
| const wchar_t *name;
|
|
| double average;
|
|
| };
|
|
|
|
|
| typedef const char *ccp;
|
|
|
|
|
| static inline int
|
|
| test_restrict (ccp restrict text)
|
|
| {
|
|
| // See if C++-style comments work.
|
|
| // Iterate through items via the restricted pointer.
|
|
| // Also check for declarations in for loops.
|
|
| for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| continue;
|
|
| return 0;
|
|
| }
|
|
|
|
|
| // Check varargs and va_copy.
|
|
| static bool
|
|
| test_varargs (const char *format, ...)
|
|
| {
|
|
| va_list args;
|
|
| va_start (args, format);
|
|
| va_list args_copy;
|
|
| va_copy (args_copy, args);
|
|
|
|
|
| const char *str = "";
|
|
| int number = 0;
|
|
| float fnumber = 0;
|
|
|
|
|
| while (*format)
|
|
| {
|
|
| switch (*format++)
|
|
| {
|
|
| case 's': // string
|
|
| str = va_arg (args_copy, const char *);
|
|
| break;
|
|
| case 'd': // int
|
|
| number = va_arg (args_copy, int);
|
|
| break;
|
|
| case 'f': // float
|
|
| fnumber = va_arg (args_copy, double);
|
|
| break;
|
|
| default:
|
|
| break;
|
|
| }
|
|
| }
|
|
| va_end (args_copy);
|
|
| va_end (args);
|
|
|
|
|
| return *str && number && fnumber;
|
|
| }
|
|
|
|
|
|
|
|
| // Does the compiler advertise C11 conformance?
|
|
| #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L
|
|
| # error "Compiler does not advertise C11 conformance"
|
|
| #endif
|
|
|
|
|
| // Check _Alignas.
|
|
| char _Alignas (double) aligned_as_double;
|
|
| char _Alignas (0) no_special_alignment;
|
|
| extern char aligned_as_int;
|
|
| char _Alignas (0) _Alignas (int) aligned_as_int;
|
|
|
|
|
| // Check _Alignof.
|
|
| enum
|
|
| {
|
|
| int_alignment = _Alignof (int),
|
|
| int_array_alignment = _Alignof (int[100]),
|
|
| char_alignment = _Alignof (char)
|
|
| };
|
|
| _Static_assert (0 < -_Alignof (int), "_Alignof is signed");
|
|
|
|
|
| // Check _Noreturn.
|
|
| int _Noreturn does_not_return (void) { for (;;) continue; }
|
|
|
|
|
| // Check _Static_assert.
|
|
| struct test_static_assert
|
|
| {
|
|
| int x;
|
|
| _Static_assert (sizeof (int) <= sizeof (long int),
|
|
| "_Static_assert does not work in struct");
|
|
| long int y;
|
|
| };
|
|
|
|
|
| // Check UTF-8 literals.
|
|
| #define u8 syntax error!
|
|
| char const utf8_literal[] = u8"happens to be ASCII" "another string";
|
|
|
|
|
| // Check duplicate typedefs.
|
|
| typedef long *long_ptr;
|
|
| typedef long int *long_ptr;
|
|
| typedef long_ptr long_ptr;
|
|
|
|
|
| // Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1.
|
|
| struct anonymous
|
|
| {
|
|
| union {
|
|
| struct { int i; int j; };
|
|
| struct { int k; long int l; } w;
|
|
| };
|
|
| int m;
|
|
| } v1;
|
|
|
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
|
|
|
| // Check bool.
|
|
| _Bool success = false;
|
|
| success |= (argc != 0);
|
|
|
|
|
| // Check restrict.
|
|
| if (test_restrict ("String literal") == 0)
|
|
| success = true;
|
|
| char *restrict newvar = "Another string";
|
|
|
|
|
| // Check varargs.
|
|
| success &= test_varargs ("s, d' f .", "string", 65, 34.234);
|
|
| test_varargs_macros ();
|
|
|
|
|
| // Check flexible array members.
|
|
| struct incomplete_array *ia =
|
|
| malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ia->datasize = 10;
|
|
| for (int i = 0; i < ia->datasize; ++i)
|
|
| ia->data[i] = i * 1.234;
|
|
|
|
|
| // Check named initializers.
|
|
| struct named_init ni = {
|
|
| .number = 34,
|
|
| .name = L"Test wide string",
|
|
| .average = 543.34343,
|
|
| };
|
|
|
|
|
| ni.number = 58;
|
|
|
|
|
| int dynamic_array[ni.number];
|
|
| dynamic_array[0] = argv[0][0];
|
|
| dynamic_array[ni.number - 1] = 543;
|
|
|
|
|
| // work around unused variable warnings
|
|
| ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| || dynamic_array[ni.number - 1] != 543);
|
|
|
|
|
|
|
|
| _Static_assert ((offsetof (struct anonymous, i)
|
|
| == offsetof (struct anonymous, w.k)),
|
|
| "Anonymous union alignment botch");
|
|
| v1.i = 2;
|
|
| v1.w.k = 5;
|
|
| ok |= v1.i != 5;
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5297: g++ -std=gnu11 -c conftest.c >&5
|
|
cc1plus: warning: command-line option '-std=gnu11' is valid for C/ObjC but not for C++
|
|
conftest.c:61:3: error: #error "Compiler does not advertise C99 conformance"
|
|
61 | # error "Compiler does not advertise C99 conformance"
|
|
| ^~~~~
|
|
conftest.c:165:3: error: #error "Compiler does not advertise C11 conformance"
|
|
165 | # error "Compiler does not advertise C11 conformance"
|
|
| ^~~~~
|
|
conftest.c:23:17: error: 'p' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:20: error: 'i' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:21: error: expression list treated as compound expression in initializer [-fpermissive]
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:26:1: error: expected unqualified-id before '{' token
|
|
26 | {
|
|
| ^
|
|
conftest.c:116:29: error: expected ',' or '...' before 'text'
|
|
116 | test_restrict (ccp restrict text)
|
|
| ^~~~
|
|
conftest.c: In function 'int test_restrict(ccp)':
|
|
conftest.c:121:30: error: 'text' was not declared in this scope; did you mean 'test'?
|
|
121 | for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| ^~~~
|
|
| test
|
|
conftest.c: At global scope:
|
|
conftest.c:169:24: error: expected initializer before 'aligned_as_double'
|
|
169 | char _Alignas (double) aligned_as_double;
|
|
| ^~~~~~~~~~~~~~~~~
|
|
conftest.c:170:19: error: expected ',' or ';' before 'no_special_alignment'
|
|
170 | char _Alignas (0) no_special_alignment;
|
|
| ^~~~~~~~~~~~~~~~~~~~
|
|
conftest.c:172:6: error: redefinition of 'char _Alignas'
|
|
172 | char _Alignas (0) _Alignas (int) aligned_as_int;
|
|
| ^~~~~~~~
|
|
conftest.c:170:6: note: 'char _Alignas' previously defined here
|
|
170 | char _Alignas (0) no_special_alignment;
|
|
| ^~~~~~~~
|
|
conftest.c:177:29: error: expected primary-expression before 'int'
|
|
177 | int_alignment = _Alignof (int),
|
|
| ^~~
|
|
conftest.c:177:19: error: '_Alignof' was not declared in this scope; did you mean '_Alignas'?
|
|
177 | int_alignment = _Alignof (int),
|
|
| ^~~~~~~~
|
|
| _Alignas
|
|
conftest.c:178:35: error: expected primary-expression before 'int'
|
|
178 | int_array_alignment = _Alignof (int[100]),
|
|
| ^~~
|
|
conftest.c:178:25: error: '_Alignof' was not declared in this scope; did you mean '_Alignas'?
|
|
178 | int_array_alignment = _Alignof (int[100]),
|
|
| ^~~~~~~~
|
|
| _Alignas
|
|
conftest.c:179:30: error: expected primary-expression before 'char'
|
|
179 | char_alignment = _Alignof (char)
|
|
| ^~~~
|
|
conftest.c:179:20: error: '_Alignof' was not declared in this scope; did you mean '_Alignas'?
|
|
179 | char_alignment = _Alignof (char)
|
|
| ^~~~~~~~
|
|
| _Alignas
|
|
conftest.c:181:16: error: expected constructor, destructor, or type conversion before '(' token
|
|
181 | _Static_assert (0 < -_Alignof (int), "_Alignof is signed");
|
|
| ^
|
|
conftest.c:184:15: error: expected initializer before 'does_not_return'
|
|
184 | int _Noreturn does_not_return (void) { for (;;) continue; }
|
|
| ^~~~~~~~~~~~~~~
|
|
conftest.c:190:19: error: expected identifier before 'sizeof'
|
|
190 | _Static_assert (sizeof (int) <= sizeof (long int),
|
|
| ^~~~~~
|
|
conftest.c:190:19: error: expected ',' or '...' before 'sizeof'
|
|
conftest.c:190:3: error: ISO C++ forbids declaration of '_Static_assert' with no type [-fpermissive]
|
|
190 | _Static_assert (sizeof (int) <= sizeof (long int),
|
|
| ^~~~~~~~~~~~~~
|
|
conftest.c: In function 'int main(int, char**)':
|
|
conftest.c:220:24: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
220 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:220:53: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
220 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:230:18: error: expected initializer before 'newvar'
|
|
230 | char *restrict newvar = "Another string";
|
|
| ^~~~~~
|
|
conftest.c:238:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive]
|
|
238 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
| |
|
|
| void*
|
|
conftest.c:257:58: error: 'newvar' was not declared in this scope
|
|
257 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| ^~~~~~
|
|
conftest.c:261:3: error: '_Static_assert' was not declared in this scope; did you mean 'static_assert'?
|
|
261 | _Static_assert ((offsetof (struct anonymous, i)
|
|
| ^~~~~~~~~~~~~~
|
|
| static_assert
|
|
configure:5297: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| // Does the compiler advertise C99 conformance?
|
|
| #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
|
|
| # error "Compiler does not advertise C99 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stdbool.h>
|
|
| extern int puts (const char *);
|
|
| extern int printf (const char *, ...);
|
|
| extern int dprintf (int, const char *, ...);
|
|
| extern void *malloc (size_t);
|
|
|
|
|
| // Check varargs macros. These examples are taken from C99 6.10.3.5.
|
|
| // dprintf is used instead of fprintf to avoid needing to declare
|
|
| // FILE and stderr.
|
|
| #define debug(...) dprintf (2, __VA_ARGS__)
|
|
| #define showlist(...) puts (#__VA_ARGS__)
|
|
| #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
|
|
| static void
|
|
| test_varargs_macros (void)
|
|
| {
|
|
| int x = 1234;
|
|
| int y = 5678;
|
|
| debug ("Flag");
|
|
| debug ("X = %d\n", x);
|
|
| showlist (The first, second, and third items.);
|
|
| report (x>y, "x is %d but y is %d", x, y);
|
|
| }
|
|
|
|
|
| // Check long long types.
|
|
| #define BIG64 18446744073709551615ull
|
|
| #define BIG32 4294967295ul
|
|
| #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
|
|
| #if !BIG_OK
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| #if BIG_OK
|
|
| #else
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| static long long int bignum = -9223372036854775807LL;
|
|
| static unsigned long long int ubignum = BIG64;
|
|
|
|
|
| struct incomplete_array
|
|
| {
|
|
| int datasize;
|
|
| double data[];
|
|
| };
|
|
|
|
|
| struct named_init {
|
|
| int number;
|
|
| const wchar_t *name;
|
|
| double average;
|
|
| };
|
|
|
|
|
| typedef const char *ccp;
|
|
|
|
|
| static inline int
|
|
| test_restrict (ccp restrict text)
|
|
| {
|
|
| // See if C++-style comments work.
|
|
| // Iterate through items via the restricted pointer.
|
|
| // Also check for declarations in for loops.
|
|
| for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| continue;
|
|
| return 0;
|
|
| }
|
|
|
|
|
| // Check varargs and va_copy.
|
|
| static bool
|
|
| test_varargs (const char *format, ...)
|
|
| {
|
|
| va_list args;
|
|
| va_start (args, format);
|
|
| va_list args_copy;
|
|
| va_copy (args_copy, args);
|
|
|
|
|
| const char *str = "";
|
|
| int number = 0;
|
|
| float fnumber = 0;
|
|
|
|
|
| while (*format)
|
|
| {
|
|
| switch (*format++)
|
|
| {
|
|
| case 's': // string
|
|
| str = va_arg (args_copy, const char *);
|
|
| break;
|
|
| case 'd': // int
|
|
| number = va_arg (args_copy, int);
|
|
| break;
|
|
| case 'f': // float
|
|
| fnumber = va_arg (args_copy, double);
|
|
| break;
|
|
| default:
|
|
| break;
|
|
| }
|
|
| }
|
|
| va_end (args_copy);
|
|
| va_end (args);
|
|
|
|
|
| return *str && number && fnumber;
|
|
| }
|
|
|
|
|
|
|
|
| // Does the compiler advertise C11 conformance?
|
|
| #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L
|
|
| # error "Compiler does not advertise C11 conformance"
|
|
| #endif
|
|
|
|
|
| // Check _Alignas.
|
|
| char _Alignas (double) aligned_as_double;
|
|
| char _Alignas (0) no_special_alignment;
|
|
| extern char aligned_as_int;
|
|
| char _Alignas (0) _Alignas (int) aligned_as_int;
|
|
|
|
|
| // Check _Alignof.
|
|
| enum
|
|
| {
|
|
| int_alignment = _Alignof (int),
|
|
| int_array_alignment = _Alignof (int[100]),
|
|
| char_alignment = _Alignof (char)
|
|
| };
|
|
| _Static_assert (0 < -_Alignof (int), "_Alignof is signed");
|
|
|
|
|
| // Check _Noreturn.
|
|
| int _Noreturn does_not_return (void) { for (;;) continue; }
|
|
|
|
|
| // Check _Static_assert.
|
|
| struct test_static_assert
|
|
| {
|
|
| int x;
|
|
| _Static_assert (sizeof (int) <= sizeof (long int),
|
|
| "_Static_assert does not work in struct");
|
|
| long int y;
|
|
| };
|
|
|
|
|
| // Check UTF-8 literals.
|
|
| #define u8 syntax error!
|
|
| char const utf8_literal[] = u8"happens to be ASCII" "another string";
|
|
|
|
|
| // Check duplicate typedefs.
|
|
| typedef long *long_ptr;
|
|
| typedef long int *long_ptr;
|
|
| typedef long_ptr long_ptr;
|
|
|
|
|
| // Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1.
|
|
| struct anonymous
|
|
| {
|
|
| union {
|
|
| struct { int i; int j; };
|
|
| struct { int k; long int l; } w;
|
|
| };
|
|
| int m;
|
|
| } v1;
|
|
|
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
|
|
|
| // Check bool.
|
|
| _Bool success = false;
|
|
| success |= (argc != 0);
|
|
|
|
|
| // Check restrict.
|
|
| if (test_restrict ("String literal") == 0)
|
|
| success = true;
|
|
| char *restrict newvar = "Another string";
|
|
|
|
|
| // Check varargs.
|
|
| success &= test_varargs ("s, d' f .", "string", 65, 34.234);
|
|
| test_varargs_macros ();
|
|
|
|
|
| // Check flexible array members.
|
|
| struct incomplete_array *ia =
|
|
| malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ia->datasize = 10;
|
|
| for (int i = 0; i < ia->datasize; ++i)
|
|
| ia->data[i] = i * 1.234;
|
|
|
|
|
| // Check named initializers.
|
|
| struct named_init ni = {
|
|
| .number = 34,
|
|
| .name = L"Test wide string",
|
|
| .average = 543.34343,
|
|
| };
|
|
|
|
|
| ni.number = 58;
|
|
|
|
|
| int dynamic_array[ni.number];
|
|
| dynamic_array[0] = argv[0][0];
|
|
| dynamic_array[ni.number - 1] = 543;
|
|
|
|
|
| // work around unused variable warnings
|
|
| ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| || dynamic_array[ni.number - 1] != 543);
|
|
|
|
|
|
|
|
| _Static_assert ((offsetof (struct anonymous, i)
|
|
| == offsetof (struct anonymous, w.k)),
|
|
| "Anonymous union alignment botch");
|
|
| v1.i = 2;
|
|
| v1.w.k = 5;
|
|
| ok |= v1.i != 5;
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5310: result: unsupported
|
|
configure:5328: checking for g++ option to enable C99 features
|
|
configure:5343: g++ -c conftest.c >&5
|
|
conftest.c:61:3: error: #error "Compiler does not advertise C99 conformance"
|
|
61 | # error "Compiler does not advertise C99 conformance"
|
|
| ^~~~~
|
|
conftest.c:23:17: error: 'p' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:20: error: 'i' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:21: error: expression list treated as compound expression in initializer [-fpermissive]
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:26:1: error: expected unqualified-id before '{' token
|
|
26 | {
|
|
| ^
|
|
conftest.c:116:29: error: expected ',' or '...' before 'text'
|
|
116 | test_restrict (ccp restrict text)
|
|
| ^~~~
|
|
conftest.c: In function 'int test_restrict(ccp)':
|
|
conftest.c:121:30: error: 'text' was not declared in this scope; did you mean 'test'?
|
|
121 | for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| ^~~~
|
|
| test
|
|
conftest.c: In function 'int main(int, char**)':
|
|
conftest.c:168:24: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
168 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:168:53: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
168 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:178:18: error: expected initializer before 'newvar'
|
|
178 | char *restrict newvar = "Another string";
|
|
| ^~~~~~
|
|
conftest.c:186:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive]
|
|
186 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
| |
|
|
| void*
|
|
conftest.c:205:58: error: 'newvar' was not declared in this scope
|
|
205 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| ^~~~~~
|
|
configure:5343: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| // Does the compiler advertise C99 conformance?
|
|
| #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
|
|
| # error "Compiler does not advertise C99 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stdbool.h>
|
|
| extern int puts (const char *);
|
|
| extern int printf (const char *, ...);
|
|
| extern int dprintf (int, const char *, ...);
|
|
| extern void *malloc (size_t);
|
|
|
|
|
| // Check varargs macros. These examples are taken from C99 6.10.3.5.
|
|
| // dprintf is used instead of fprintf to avoid needing to declare
|
|
| // FILE and stderr.
|
|
| #define debug(...) dprintf (2, __VA_ARGS__)
|
|
| #define showlist(...) puts (#__VA_ARGS__)
|
|
| #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
|
|
| static void
|
|
| test_varargs_macros (void)
|
|
| {
|
|
| int x = 1234;
|
|
| int y = 5678;
|
|
| debug ("Flag");
|
|
| debug ("X = %d\n", x);
|
|
| showlist (The first, second, and third items.);
|
|
| report (x>y, "x is %d but y is %d", x, y);
|
|
| }
|
|
|
|
|
| // Check long long types.
|
|
| #define BIG64 18446744073709551615ull
|
|
| #define BIG32 4294967295ul
|
|
| #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
|
|
| #if !BIG_OK
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| #if BIG_OK
|
|
| #else
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| static long long int bignum = -9223372036854775807LL;
|
|
| static unsigned long long int ubignum = BIG64;
|
|
|
|
|
| struct incomplete_array
|
|
| {
|
|
| int datasize;
|
|
| double data[];
|
|
| };
|
|
|
|
|
| struct named_init {
|
|
| int number;
|
|
| const wchar_t *name;
|
|
| double average;
|
|
| };
|
|
|
|
|
| typedef const char *ccp;
|
|
|
|
|
| static inline int
|
|
| test_restrict (ccp restrict text)
|
|
| {
|
|
| // See if C++-style comments work.
|
|
| // Iterate through items via the restricted pointer.
|
|
| // Also check for declarations in for loops.
|
|
| for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| continue;
|
|
| return 0;
|
|
| }
|
|
|
|
|
| // Check varargs and va_copy.
|
|
| static bool
|
|
| test_varargs (const char *format, ...)
|
|
| {
|
|
| va_list args;
|
|
| va_start (args, format);
|
|
| va_list args_copy;
|
|
| va_copy (args_copy, args);
|
|
|
|
|
| const char *str = "";
|
|
| int number = 0;
|
|
| float fnumber = 0;
|
|
|
|
|
| while (*format)
|
|
| {
|
|
| switch (*format++)
|
|
| {
|
|
| case 's': // string
|
|
| str = va_arg (args_copy, const char *);
|
|
| break;
|
|
| case 'd': // int
|
|
| number = va_arg (args_copy, int);
|
|
| break;
|
|
| case 'f': // float
|
|
| fnumber = va_arg (args_copy, double);
|
|
| break;
|
|
| default:
|
|
| break;
|
|
| }
|
|
| }
|
|
| va_end (args_copy);
|
|
| va_end (args);
|
|
|
|
|
| return *str && number && fnumber;
|
|
| }
|
|
|
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
|
|
|
| // Check bool.
|
|
| _Bool success = false;
|
|
| success |= (argc != 0);
|
|
|
|
|
| // Check restrict.
|
|
| if (test_restrict ("String literal") == 0)
|
|
| success = true;
|
|
| char *restrict newvar = "Another string";
|
|
|
|
|
| // Check varargs.
|
|
| success &= test_varargs ("s, d' f .", "string", 65, 34.234);
|
|
| test_varargs_macros ();
|
|
|
|
|
| // Check flexible array members.
|
|
| struct incomplete_array *ia =
|
|
| malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ia->datasize = 10;
|
|
| for (int i = 0; i < ia->datasize; ++i)
|
|
| ia->data[i] = i * 1.234;
|
|
|
|
|
| // Check named initializers.
|
|
| struct named_init ni = {
|
|
| .number = 34,
|
|
| .name = L"Test wide string",
|
|
| .average = 543.34343,
|
|
| };
|
|
|
|
|
| ni.number = 58;
|
|
|
|
|
| int dynamic_array[ni.number];
|
|
| dynamic_array[0] = argv[0][0];
|
|
| dynamic_array[ni.number - 1] = 543;
|
|
|
|
|
| // work around unused variable warnings
|
|
| ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| || dynamic_array[ni.number - 1] != 543);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5343: g++ -std=gnu99 -c conftest.c >&5
|
|
cc1plus: warning: command-line option '-std=gnu99' is valid for C/ObjC but not for C++
|
|
conftest.c:61:3: error: #error "Compiler does not advertise C99 conformance"
|
|
61 | # error "Compiler does not advertise C99 conformance"
|
|
| ^~~~~
|
|
conftest.c:23:17: error: 'p' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:20: error: 'i' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:21: error: expression list treated as compound expression in initializer [-fpermissive]
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:26:1: error: expected unqualified-id before '{' token
|
|
26 | {
|
|
| ^
|
|
conftest.c:116:29: error: expected ',' or '...' before 'text'
|
|
116 | test_restrict (ccp restrict text)
|
|
| ^~~~
|
|
conftest.c: In function 'int test_restrict(ccp)':
|
|
conftest.c:121:30: error: 'text' was not declared in this scope; did you mean 'test'?
|
|
121 | for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| ^~~~
|
|
| test
|
|
conftest.c: In function 'int main(int, char**)':
|
|
conftest.c:168:24: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
168 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:168:53: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
168 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:178:18: error: expected initializer before 'newvar'
|
|
178 | char *restrict newvar = "Another string";
|
|
| ^~~~~~
|
|
conftest.c:186:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive]
|
|
186 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
| |
|
|
| void*
|
|
conftest.c:205:58: error: 'newvar' was not declared in this scope
|
|
205 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| ^~~~~~
|
|
configure:5343: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| // Does the compiler advertise C99 conformance?
|
|
| #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
|
|
| # error "Compiler does not advertise C99 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stdbool.h>
|
|
| extern int puts (const char *);
|
|
| extern int printf (const char *, ...);
|
|
| extern int dprintf (int, const char *, ...);
|
|
| extern void *malloc (size_t);
|
|
|
|
|
| // Check varargs macros. These examples are taken from C99 6.10.3.5.
|
|
| // dprintf is used instead of fprintf to avoid needing to declare
|
|
| // FILE and stderr.
|
|
| #define debug(...) dprintf (2, __VA_ARGS__)
|
|
| #define showlist(...) puts (#__VA_ARGS__)
|
|
| #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
|
|
| static void
|
|
| test_varargs_macros (void)
|
|
| {
|
|
| int x = 1234;
|
|
| int y = 5678;
|
|
| debug ("Flag");
|
|
| debug ("X = %d\n", x);
|
|
| showlist (The first, second, and third items.);
|
|
| report (x>y, "x is %d but y is %d", x, y);
|
|
| }
|
|
|
|
|
| // Check long long types.
|
|
| #define BIG64 18446744073709551615ull
|
|
| #define BIG32 4294967295ul
|
|
| #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
|
|
| #if !BIG_OK
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| #if BIG_OK
|
|
| #else
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| static long long int bignum = -9223372036854775807LL;
|
|
| static unsigned long long int ubignum = BIG64;
|
|
|
|
|
| struct incomplete_array
|
|
| {
|
|
| int datasize;
|
|
| double data[];
|
|
| };
|
|
|
|
|
| struct named_init {
|
|
| int number;
|
|
| const wchar_t *name;
|
|
| double average;
|
|
| };
|
|
|
|
|
| typedef const char *ccp;
|
|
|
|
|
| static inline int
|
|
| test_restrict (ccp restrict text)
|
|
| {
|
|
| // See if C++-style comments work.
|
|
| // Iterate through items via the restricted pointer.
|
|
| // Also check for declarations in for loops.
|
|
| for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| continue;
|
|
| return 0;
|
|
| }
|
|
|
|
|
| // Check varargs and va_copy.
|
|
| static bool
|
|
| test_varargs (const char *format, ...)
|
|
| {
|
|
| va_list args;
|
|
| va_start (args, format);
|
|
| va_list args_copy;
|
|
| va_copy (args_copy, args);
|
|
|
|
|
| const char *str = "";
|
|
| int number = 0;
|
|
| float fnumber = 0;
|
|
|
|
|
| while (*format)
|
|
| {
|
|
| switch (*format++)
|
|
| {
|
|
| case 's': // string
|
|
| str = va_arg (args_copy, const char *);
|
|
| break;
|
|
| case 'd': // int
|
|
| number = va_arg (args_copy, int);
|
|
| break;
|
|
| case 'f': // float
|
|
| fnumber = va_arg (args_copy, double);
|
|
| break;
|
|
| default:
|
|
| break;
|
|
| }
|
|
| }
|
|
| va_end (args_copy);
|
|
| va_end (args);
|
|
|
|
|
| return *str && number && fnumber;
|
|
| }
|
|
|
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
|
|
|
| // Check bool.
|
|
| _Bool success = false;
|
|
| success |= (argc != 0);
|
|
|
|
|
| // Check restrict.
|
|
| if (test_restrict ("String literal") == 0)
|
|
| success = true;
|
|
| char *restrict newvar = "Another string";
|
|
|
|
|
| // Check varargs.
|
|
| success &= test_varargs ("s, d' f .", "string", 65, 34.234);
|
|
| test_varargs_macros ();
|
|
|
|
|
| // Check flexible array members.
|
|
| struct incomplete_array *ia =
|
|
| malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ia->datasize = 10;
|
|
| for (int i = 0; i < ia->datasize; ++i)
|
|
| ia->data[i] = i * 1.234;
|
|
|
|
|
| // Check named initializers.
|
|
| struct named_init ni = {
|
|
| .number = 34,
|
|
| .name = L"Test wide string",
|
|
| .average = 543.34343,
|
|
| };
|
|
|
|
|
| ni.number = 58;
|
|
|
|
|
| int dynamic_array[ni.number];
|
|
| dynamic_array[0] = argv[0][0];
|
|
| dynamic_array[ni.number - 1] = 543;
|
|
|
|
|
| // work around unused variable warnings
|
|
| ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| || dynamic_array[ni.number - 1] != 543);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5343: g++ -std=c99 -c conftest.c >&5
|
|
cc1plus: warning: command-line option '-std=c99' is valid for C/ObjC but not for C++
|
|
conftest.c:61:3: error: #error "Compiler does not advertise C99 conformance"
|
|
61 | # error "Compiler does not advertise C99 conformance"
|
|
| ^~~~~
|
|
conftest.c:23:17: error: 'p' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:20: error: 'i' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:21: error: expression list treated as compound expression in initializer [-fpermissive]
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:26:1: error: expected unqualified-id before '{' token
|
|
26 | {
|
|
| ^
|
|
conftest.c:116:29: error: expected ',' or '...' before 'text'
|
|
116 | test_restrict (ccp restrict text)
|
|
| ^~~~
|
|
conftest.c: In function 'int test_restrict(ccp)':
|
|
conftest.c:121:30: error: 'text' was not declared in this scope; did you mean 'test'?
|
|
121 | for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| ^~~~
|
|
| test
|
|
conftest.c: In function 'int main(int, char**)':
|
|
conftest.c:168:24: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
168 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:168:53: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
168 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:178:18: error: expected initializer before 'newvar'
|
|
178 | char *restrict newvar = "Another string";
|
|
| ^~~~~~
|
|
conftest.c:186:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive]
|
|
186 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
| |
|
|
| void*
|
|
conftest.c:205:58: error: 'newvar' was not declared in this scope
|
|
205 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| ^~~~~~
|
|
configure:5343: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| // Does the compiler advertise C99 conformance?
|
|
| #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
|
|
| # error "Compiler does not advertise C99 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stdbool.h>
|
|
| extern int puts (const char *);
|
|
| extern int printf (const char *, ...);
|
|
| extern int dprintf (int, const char *, ...);
|
|
| extern void *malloc (size_t);
|
|
|
|
|
| // Check varargs macros. These examples are taken from C99 6.10.3.5.
|
|
| // dprintf is used instead of fprintf to avoid needing to declare
|
|
| // FILE and stderr.
|
|
| #define debug(...) dprintf (2, __VA_ARGS__)
|
|
| #define showlist(...) puts (#__VA_ARGS__)
|
|
| #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
|
|
| static void
|
|
| test_varargs_macros (void)
|
|
| {
|
|
| int x = 1234;
|
|
| int y = 5678;
|
|
| debug ("Flag");
|
|
| debug ("X = %d\n", x);
|
|
| showlist (The first, second, and third items.);
|
|
| report (x>y, "x is %d but y is %d", x, y);
|
|
| }
|
|
|
|
|
| // Check long long types.
|
|
| #define BIG64 18446744073709551615ull
|
|
| #define BIG32 4294967295ul
|
|
| #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
|
|
| #if !BIG_OK
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| #if BIG_OK
|
|
| #else
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| static long long int bignum = -9223372036854775807LL;
|
|
| static unsigned long long int ubignum = BIG64;
|
|
|
|
|
| struct incomplete_array
|
|
| {
|
|
| int datasize;
|
|
| double data[];
|
|
| };
|
|
|
|
|
| struct named_init {
|
|
| int number;
|
|
| const wchar_t *name;
|
|
| double average;
|
|
| };
|
|
|
|
|
| typedef const char *ccp;
|
|
|
|
|
| static inline int
|
|
| test_restrict (ccp restrict text)
|
|
| {
|
|
| // See if C++-style comments work.
|
|
| // Iterate through items via the restricted pointer.
|
|
| // Also check for declarations in for loops.
|
|
| for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| continue;
|
|
| return 0;
|
|
| }
|
|
|
|
|
| // Check varargs and va_copy.
|
|
| static bool
|
|
| test_varargs (const char *format, ...)
|
|
| {
|
|
| va_list args;
|
|
| va_start (args, format);
|
|
| va_list args_copy;
|
|
| va_copy (args_copy, args);
|
|
|
|
|
| const char *str = "";
|
|
| int number = 0;
|
|
| float fnumber = 0;
|
|
|
|
|
| while (*format)
|
|
| {
|
|
| switch (*format++)
|
|
| {
|
|
| case 's': // string
|
|
| str = va_arg (args_copy, const char *);
|
|
| break;
|
|
| case 'd': // int
|
|
| number = va_arg (args_copy, int);
|
|
| break;
|
|
| case 'f': // float
|
|
| fnumber = va_arg (args_copy, double);
|
|
| break;
|
|
| default:
|
|
| break;
|
|
| }
|
|
| }
|
|
| va_end (args_copy);
|
|
| va_end (args);
|
|
|
|
|
| return *str && number && fnumber;
|
|
| }
|
|
|
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
|
|
|
| // Check bool.
|
|
| _Bool success = false;
|
|
| success |= (argc != 0);
|
|
|
|
|
| // Check restrict.
|
|
| if (test_restrict ("String literal") == 0)
|
|
| success = true;
|
|
| char *restrict newvar = "Another string";
|
|
|
|
|
| // Check varargs.
|
|
| success &= test_varargs ("s, d' f .", "string", 65, 34.234);
|
|
| test_varargs_macros ();
|
|
|
|
|
| // Check flexible array members.
|
|
| struct incomplete_array *ia =
|
|
| malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ia->datasize = 10;
|
|
| for (int i = 0; i < ia->datasize; ++i)
|
|
| ia->data[i] = i * 1.234;
|
|
|
|
|
| // Check named initializers.
|
|
| struct named_init ni = {
|
|
| .number = 34,
|
|
| .name = L"Test wide string",
|
|
| .average = 543.34343,
|
|
| };
|
|
|
|
|
| ni.number = 58;
|
|
|
|
|
| int dynamic_array[ni.number];
|
|
| dynamic_array[0] = argv[0][0];
|
|
| dynamic_array[ni.number - 1] = 543;
|
|
|
|
|
| // work around unused variable warnings
|
|
| ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| || dynamic_array[ni.number - 1] != 543);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5343: g++ -c99 -c conftest.c >&5
|
|
g++: error: unrecognized command-line option '-c99'
|
|
configure:5343: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| // Does the compiler advertise C99 conformance?
|
|
| #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
|
|
| # error "Compiler does not advertise C99 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stdbool.h>
|
|
| extern int puts (const char *);
|
|
| extern int printf (const char *, ...);
|
|
| extern int dprintf (int, const char *, ...);
|
|
| extern void *malloc (size_t);
|
|
|
|
|
| // Check varargs macros. These examples are taken from C99 6.10.3.5.
|
|
| // dprintf is used instead of fprintf to avoid needing to declare
|
|
| // FILE and stderr.
|
|
| #define debug(...) dprintf (2, __VA_ARGS__)
|
|
| #define showlist(...) puts (#__VA_ARGS__)
|
|
| #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
|
|
| static void
|
|
| test_varargs_macros (void)
|
|
| {
|
|
| int x = 1234;
|
|
| int y = 5678;
|
|
| debug ("Flag");
|
|
| debug ("X = %d\n", x);
|
|
| showlist (The first, second, and third items.);
|
|
| report (x>y, "x is %d but y is %d", x, y);
|
|
| }
|
|
|
|
|
| // Check long long types.
|
|
| #define BIG64 18446744073709551615ull
|
|
| #define BIG32 4294967295ul
|
|
| #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
|
|
| #if !BIG_OK
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| #if BIG_OK
|
|
| #else
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| static long long int bignum = -9223372036854775807LL;
|
|
| static unsigned long long int ubignum = BIG64;
|
|
|
|
|
| struct incomplete_array
|
|
| {
|
|
| int datasize;
|
|
| double data[];
|
|
| };
|
|
|
|
|
| struct named_init {
|
|
| int number;
|
|
| const wchar_t *name;
|
|
| double average;
|
|
| };
|
|
|
|
|
| typedef const char *ccp;
|
|
|
|
|
| static inline int
|
|
| test_restrict (ccp restrict text)
|
|
| {
|
|
| // See if C++-style comments work.
|
|
| // Iterate through items via the restricted pointer.
|
|
| // Also check for declarations in for loops.
|
|
| for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| continue;
|
|
| return 0;
|
|
| }
|
|
|
|
|
| // Check varargs and va_copy.
|
|
| static bool
|
|
| test_varargs (const char *format, ...)
|
|
| {
|
|
| va_list args;
|
|
| va_start (args, format);
|
|
| va_list args_copy;
|
|
| va_copy (args_copy, args);
|
|
|
|
|
| const char *str = "";
|
|
| int number = 0;
|
|
| float fnumber = 0;
|
|
|
|
|
| while (*format)
|
|
| {
|
|
| switch (*format++)
|
|
| {
|
|
| case 's': // string
|
|
| str = va_arg (args_copy, const char *);
|
|
| break;
|
|
| case 'd': // int
|
|
| number = va_arg (args_copy, int);
|
|
| break;
|
|
| case 'f': // float
|
|
| fnumber = va_arg (args_copy, double);
|
|
| break;
|
|
| default:
|
|
| break;
|
|
| }
|
|
| }
|
|
| va_end (args_copy);
|
|
| va_end (args);
|
|
|
|
|
| return *str && number && fnumber;
|
|
| }
|
|
|
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
|
|
|
| // Check bool.
|
|
| _Bool success = false;
|
|
| success |= (argc != 0);
|
|
|
|
|
| // Check restrict.
|
|
| if (test_restrict ("String literal") == 0)
|
|
| success = true;
|
|
| char *restrict newvar = "Another string";
|
|
|
|
|
| // Check varargs.
|
|
| success &= test_varargs ("s, d' f .", "string", 65, 34.234);
|
|
| test_varargs_macros ();
|
|
|
|
|
| // Check flexible array members.
|
|
| struct incomplete_array *ia =
|
|
| malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ia->datasize = 10;
|
|
| for (int i = 0; i < ia->datasize; ++i)
|
|
| ia->data[i] = i * 1.234;
|
|
|
|
|
| // Check named initializers.
|
|
| struct named_init ni = {
|
|
| .number = 34,
|
|
| .name = L"Test wide string",
|
|
| .average = 543.34343,
|
|
| };
|
|
|
|
|
| ni.number = 58;
|
|
|
|
|
| int dynamic_array[ni.number];
|
|
| dynamic_array[0] = argv[0][0];
|
|
| dynamic_array[ni.number - 1] = 543;
|
|
|
|
|
| // work around unused variable warnings
|
|
| ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| || dynamic_array[ni.number - 1] != 543);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5343: g++ -qlanglvl=extc1x -c conftest.c >&5
|
|
g++: error: unrecognized command-line option '-qlanglvl=extc1x'
|
|
configure:5343: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| // Does the compiler advertise C99 conformance?
|
|
| #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
|
|
| # error "Compiler does not advertise C99 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stdbool.h>
|
|
| extern int puts (const char *);
|
|
| extern int printf (const char *, ...);
|
|
| extern int dprintf (int, const char *, ...);
|
|
| extern void *malloc (size_t);
|
|
|
|
|
| // Check varargs macros. These examples are taken from C99 6.10.3.5.
|
|
| // dprintf is used instead of fprintf to avoid needing to declare
|
|
| // FILE and stderr.
|
|
| #define debug(...) dprintf (2, __VA_ARGS__)
|
|
| #define showlist(...) puts (#__VA_ARGS__)
|
|
| #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
|
|
| static void
|
|
| test_varargs_macros (void)
|
|
| {
|
|
| int x = 1234;
|
|
| int y = 5678;
|
|
| debug ("Flag");
|
|
| debug ("X = %d\n", x);
|
|
| showlist (The first, second, and third items.);
|
|
| report (x>y, "x is %d but y is %d", x, y);
|
|
| }
|
|
|
|
|
| // Check long long types.
|
|
| #define BIG64 18446744073709551615ull
|
|
| #define BIG32 4294967295ul
|
|
| #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
|
|
| #if !BIG_OK
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| #if BIG_OK
|
|
| #else
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| static long long int bignum = -9223372036854775807LL;
|
|
| static unsigned long long int ubignum = BIG64;
|
|
|
|
|
| struct incomplete_array
|
|
| {
|
|
| int datasize;
|
|
| double data[];
|
|
| };
|
|
|
|
|
| struct named_init {
|
|
| int number;
|
|
| const wchar_t *name;
|
|
| double average;
|
|
| };
|
|
|
|
|
| typedef const char *ccp;
|
|
|
|
|
| static inline int
|
|
| test_restrict (ccp restrict text)
|
|
| {
|
|
| // See if C++-style comments work.
|
|
| // Iterate through items via the restricted pointer.
|
|
| // Also check for declarations in for loops.
|
|
| for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| continue;
|
|
| return 0;
|
|
| }
|
|
|
|
|
| // Check varargs and va_copy.
|
|
| static bool
|
|
| test_varargs (const char *format, ...)
|
|
| {
|
|
| va_list args;
|
|
| va_start (args, format);
|
|
| va_list args_copy;
|
|
| va_copy (args_copy, args);
|
|
|
|
|
| const char *str = "";
|
|
| int number = 0;
|
|
| float fnumber = 0;
|
|
|
|
|
| while (*format)
|
|
| {
|
|
| switch (*format++)
|
|
| {
|
|
| case 's': // string
|
|
| str = va_arg (args_copy, const char *);
|
|
| break;
|
|
| case 'd': // int
|
|
| number = va_arg (args_copy, int);
|
|
| break;
|
|
| case 'f': // float
|
|
| fnumber = va_arg (args_copy, double);
|
|
| break;
|
|
| default:
|
|
| break;
|
|
| }
|
|
| }
|
|
| va_end (args_copy);
|
|
| va_end (args);
|
|
|
|
|
| return *str && number && fnumber;
|
|
| }
|
|
|
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
|
|
|
| // Check bool.
|
|
| _Bool success = false;
|
|
| success |= (argc != 0);
|
|
|
|
|
| // Check restrict.
|
|
| if (test_restrict ("String literal") == 0)
|
|
| success = true;
|
|
| char *restrict newvar = "Another string";
|
|
|
|
|
| // Check varargs.
|
|
| success &= test_varargs ("s, d' f .", "string", 65, 34.234);
|
|
| test_varargs_macros ();
|
|
|
|
|
| // Check flexible array members.
|
|
| struct incomplete_array *ia =
|
|
| malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ia->datasize = 10;
|
|
| for (int i = 0; i < ia->datasize; ++i)
|
|
| ia->data[i] = i * 1.234;
|
|
|
|
|
| // Check named initializers.
|
|
| struct named_init ni = {
|
|
| .number = 34,
|
|
| .name = L"Test wide string",
|
|
| .average = 543.34343,
|
|
| };
|
|
|
|
|
| ni.number = 58;
|
|
|
|
|
| int dynamic_array[ni.number];
|
|
| dynamic_array[0] = argv[0][0];
|
|
| dynamic_array[ni.number - 1] = 543;
|
|
|
|
|
| // work around unused variable warnings
|
|
| ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| || dynamic_array[ni.number - 1] != 543);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5343: g++ -qlanglvl=extc99 -c conftest.c >&5
|
|
g++: error: unrecognized command-line option '-qlanglvl=extc99'
|
|
configure:5343: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| // Does the compiler advertise C99 conformance?
|
|
| #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
|
|
| # error "Compiler does not advertise C99 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stdbool.h>
|
|
| extern int puts (const char *);
|
|
| extern int printf (const char *, ...);
|
|
| extern int dprintf (int, const char *, ...);
|
|
| extern void *malloc (size_t);
|
|
|
|
|
| // Check varargs macros. These examples are taken from C99 6.10.3.5.
|
|
| // dprintf is used instead of fprintf to avoid needing to declare
|
|
| // FILE and stderr.
|
|
| #define debug(...) dprintf (2, __VA_ARGS__)
|
|
| #define showlist(...) puts (#__VA_ARGS__)
|
|
| #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
|
|
| static void
|
|
| test_varargs_macros (void)
|
|
| {
|
|
| int x = 1234;
|
|
| int y = 5678;
|
|
| debug ("Flag");
|
|
| debug ("X = %d\n", x);
|
|
| showlist (The first, second, and third items.);
|
|
| report (x>y, "x is %d but y is %d", x, y);
|
|
| }
|
|
|
|
|
| // Check long long types.
|
|
| #define BIG64 18446744073709551615ull
|
|
| #define BIG32 4294967295ul
|
|
| #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
|
|
| #if !BIG_OK
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| #if BIG_OK
|
|
| #else
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| static long long int bignum = -9223372036854775807LL;
|
|
| static unsigned long long int ubignum = BIG64;
|
|
|
|
|
| struct incomplete_array
|
|
| {
|
|
| int datasize;
|
|
| double data[];
|
|
| };
|
|
|
|
|
| struct named_init {
|
|
| int number;
|
|
| const wchar_t *name;
|
|
| double average;
|
|
| };
|
|
|
|
|
| typedef const char *ccp;
|
|
|
|
|
| static inline int
|
|
| test_restrict (ccp restrict text)
|
|
| {
|
|
| // See if C++-style comments work.
|
|
| // Iterate through items via the restricted pointer.
|
|
| // Also check for declarations in for loops.
|
|
| for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| continue;
|
|
| return 0;
|
|
| }
|
|
|
|
|
| // Check varargs and va_copy.
|
|
| static bool
|
|
| test_varargs (const char *format, ...)
|
|
| {
|
|
| va_list args;
|
|
| va_start (args, format);
|
|
| va_list args_copy;
|
|
| va_copy (args_copy, args);
|
|
|
|
|
| const char *str = "";
|
|
| int number = 0;
|
|
| float fnumber = 0;
|
|
|
|
|
| while (*format)
|
|
| {
|
|
| switch (*format++)
|
|
| {
|
|
| case 's': // string
|
|
| str = va_arg (args_copy, const char *);
|
|
| break;
|
|
| case 'd': // int
|
|
| number = va_arg (args_copy, int);
|
|
| break;
|
|
| case 'f': // float
|
|
| fnumber = va_arg (args_copy, double);
|
|
| break;
|
|
| default:
|
|
| break;
|
|
| }
|
|
| }
|
|
| va_end (args_copy);
|
|
| va_end (args);
|
|
|
|
|
| return *str && number && fnumber;
|
|
| }
|
|
|
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
|
|
|
| // Check bool.
|
|
| _Bool success = false;
|
|
| success |= (argc != 0);
|
|
|
|
|
| // Check restrict.
|
|
| if (test_restrict ("String literal") == 0)
|
|
| success = true;
|
|
| char *restrict newvar = "Another string";
|
|
|
|
|
| // Check varargs.
|
|
| success &= test_varargs ("s, d' f .", "string", 65, 34.234);
|
|
| test_varargs_macros ();
|
|
|
|
|
| // Check flexible array members.
|
|
| struct incomplete_array *ia =
|
|
| malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ia->datasize = 10;
|
|
| for (int i = 0; i < ia->datasize; ++i)
|
|
| ia->data[i] = i * 1.234;
|
|
|
|
|
| // Check named initializers.
|
|
| struct named_init ni = {
|
|
| .number = 34,
|
|
| .name = L"Test wide string",
|
|
| .average = 543.34343,
|
|
| };
|
|
|
|
|
| ni.number = 58;
|
|
|
|
|
| int dynamic_array[ni.number];
|
|
| dynamic_array[0] = argv[0][0];
|
|
| dynamic_array[ni.number - 1] = 543;
|
|
|
|
|
| // work around unused variable warnings
|
|
| ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| || dynamic_array[ni.number - 1] != 543);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5343: g++ -AC99 -c conftest.c >&5
|
|
<command-line>: error: missing '(' after predicate
|
|
conftest.c:61:3: error: #error "Compiler does not advertise C99 conformance"
|
|
61 | # error "Compiler does not advertise C99 conformance"
|
|
| ^~~~~
|
|
conftest.c:23:17: error: 'p' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:20: error: 'i' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:21: error: expression list treated as compound expression in initializer [-fpermissive]
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:26:1: error: expected unqualified-id before '{' token
|
|
26 | {
|
|
| ^
|
|
conftest.c:116:29: error: expected ',' or '...' before 'text'
|
|
116 | test_restrict (ccp restrict text)
|
|
| ^~~~
|
|
conftest.c: In function 'int test_restrict(ccp)':
|
|
conftest.c:121:30: error: 'text' was not declared in this scope; did you mean 'test'?
|
|
121 | for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| ^~~~
|
|
| test
|
|
conftest.c: In function 'int main(int, char**)':
|
|
conftest.c:168:24: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
168 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:168:53: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
168 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:178:18: error: expected initializer before 'newvar'
|
|
178 | char *restrict newvar = "Another string";
|
|
| ^~~~~~
|
|
conftest.c:186:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive]
|
|
186 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
| |
|
|
| void*
|
|
conftest.c:205:58: error: 'newvar' was not declared in this scope
|
|
205 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| ^~~~~~
|
|
configure:5343: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| // Does the compiler advertise C99 conformance?
|
|
| #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
|
|
| # error "Compiler does not advertise C99 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stdbool.h>
|
|
| extern int puts (const char *);
|
|
| extern int printf (const char *, ...);
|
|
| extern int dprintf (int, const char *, ...);
|
|
| extern void *malloc (size_t);
|
|
|
|
|
| // Check varargs macros. These examples are taken from C99 6.10.3.5.
|
|
| // dprintf is used instead of fprintf to avoid needing to declare
|
|
| // FILE and stderr.
|
|
| #define debug(...) dprintf (2, __VA_ARGS__)
|
|
| #define showlist(...) puts (#__VA_ARGS__)
|
|
| #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
|
|
| static void
|
|
| test_varargs_macros (void)
|
|
| {
|
|
| int x = 1234;
|
|
| int y = 5678;
|
|
| debug ("Flag");
|
|
| debug ("X = %d\n", x);
|
|
| showlist (The first, second, and third items.);
|
|
| report (x>y, "x is %d but y is %d", x, y);
|
|
| }
|
|
|
|
|
| // Check long long types.
|
|
| #define BIG64 18446744073709551615ull
|
|
| #define BIG32 4294967295ul
|
|
| #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
|
|
| #if !BIG_OK
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| #if BIG_OK
|
|
| #else
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| static long long int bignum = -9223372036854775807LL;
|
|
| static unsigned long long int ubignum = BIG64;
|
|
|
|
|
| struct incomplete_array
|
|
| {
|
|
| int datasize;
|
|
| double data[];
|
|
| };
|
|
|
|
|
| struct named_init {
|
|
| int number;
|
|
| const wchar_t *name;
|
|
| double average;
|
|
| };
|
|
|
|
|
| typedef const char *ccp;
|
|
|
|
|
| static inline int
|
|
| test_restrict (ccp restrict text)
|
|
| {
|
|
| // See if C++-style comments work.
|
|
| // Iterate through items via the restricted pointer.
|
|
| // Also check for declarations in for loops.
|
|
| for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| continue;
|
|
| return 0;
|
|
| }
|
|
|
|
|
| // Check varargs and va_copy.
|
|
| static bool
|
|
| test_varargs (const char *format, ...)
|
|
| {
|
|
| va_list args;
|
|
| va_start (args, format);
|
|
| va_list args_copy;
|
|
| va_copy (args_copy, args);
|
|
|
|
|
| const char *str = "";
|
|
| int number = 0;
|
|
| float fnumber = 0;
|
|
|
|
|
| while (*format)
|
|
| {
|
|
| switch (*format++)
|
|
| {
|
|
| case 's': // string
|
|
| str = va_arg (args_copy, const char *);
|
|
| break;
|
|
| case 'd': // int
|
|
| number = va_arg (args_copy, int);
|
|
| break;
|
|
| case 'f': // float
|
|
| fnumber = va_arg (args_copy, double);
|
|
| break;
|
|
| default:
|
|
| break;
|
|
| }
|
|
| }
|
|
| va_end (args_copy);
|
|
| va_end (args);
|
|
|
|
|
| return *str && number && fnumber;
|
|
| }
|
|
|
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
|
|
|
| // Check bool.
|
|
| _Bool success = false;
|
|
| success |= (argc != 0);
|
|
|
|
|
| // Check restrict.
|
|
| if (test_restrict ("String literal") == 0)
|
|
| success = true;
|
|
| char *restrict newvar = "Another string";
|
|
|
|
|
| // Check varargs.
|
|
| success &= test_varargs ("s, d' f .", "string", 65, 34.234);
|
|
| test_varargs_macros ();
|
|
|
|
|
| // Check flexible array members.
|
|
| struct incomplete_array *ia =
|
|
| malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ia->datasize = 10;
|
|
| for (int i = 0; i < ia->datasize; ++i)
|
|
| ia->data[i] = i * 1.234;
|
|
|
|
|
| // Check named initializers.
|
|
| struct named_init ni = {
|
|
| .number = 34,
|
|
| .name = L"Test wide string",
|
|
| .average = 543.34343,
|
|
| };
|
|
|
|
|
| ni.number = 58;
|
|
|
|
|
| int dynamic_array[ni.number];
|
|
| dynamic_array[0] = argv[0][0];
|
|
| dynamic_array[ni.number - 1] = 543;
|
|
|
|
|
| // work around unused variable warnings
|
|
| ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| || dynamic_array[ni.number - 1] != 543);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5343: g++ -D_STDC_C99= -c conftest.c >&5
|
|
conftest.c:61:3: error: #error "Compiler does not advertise C99 conformance"
|
|
61 | # error "Compiler does not advertise C99 conformance"
|
|
| ^~~~~
|
|
conftest.c:23:17: error: 'p' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:20: error: 'i' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:21: error: expression list treated as compound expression in initializer [-fpermissive]
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:26:1: error: expected unqualified-id before '{' token
|
|
26 | {
|
|
| ^
|
|
conftest.c:116:29: error: expected ',' or '...' before 'text'
|
|
116 | test_restrict (ccp restrict text)
|
|
| ^~~~
|
|
conftest.c: In function 'int test_restrict(ccp)':
|
|
conftest.c:121:30: error: 'text' was not declared in this scope; did you mean 'test'?
|
|
121 | for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| ^~~~
|
|
| test
|
|
conftest.c: In function 'int main(int, char**)':
|
|
conftest.c:168:24: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
168 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:168:53: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
168 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:178:18: error: expected initializer before 'newvar'
|
|
178 | char *restrict newvar = "Another string";
|
|
| ^~~~~~
|
|
conftest.c:186:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive]
|
|
186 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
| |
|
|
| void*
|
|
conftest.c:205:58: error: 'newvar' was not declared in this scope
|
|
205 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| ^~~~~~
|
|
configure:5343: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| // Does the compiler advertise C99 conformance?
|
|
| #if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
|
|
| # error "Compiler does not advertise C99 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stdbool.h>
|
|
| extern int puts (const char *);
|
|
| extern int printf (const char *, ...);
|
|
| extern int dprintf (int, const char *, ...);
|
|
| extern void *malloc (size_t);
|
|
|
|
|
| // Check varargs macros. These examples are taken from C99 6.10.3.5.
|
|
| // dprintf is used instead of fprintf to avoid needing to declare
|
|
| // FILE and stderr.
|
|
| #define debug(...) dprintf (2, __VA_ARGS__)
|
|
| #define showlist(...) puts (#__VA_ARGS__)
|
|
| #define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
|
|
| static void
|
|
| test_varargs_macros (void)
|
|
| {
|
|
| int x = 1234;
|
|
| int y = 5678;
|
|
| debug ("Flag");
|
|
| debug ("X = %d\n", x);
|
|
| showlist (The first, second, and third items.);
|
|
| report (x>y, "x is %d but y is %d", x, y);
|
|
| }
|
|
|
|
|
| // Check long long types.
|
|
| #define BIG64 18446744073709551615ull
|
|
| #define BIG32 4294967295ul
|
|
| #define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
|
|
| #if !BIG_OK
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| #if BIG_OK
|
|
| #else
|
|
| #error "your preprocessor is broken"
|
|
| #endif
|
|
| static long long int bignum = -9223372036854775807LL;
|
|
| static unsigned long long int ubignum = BIG64;
|
|
|
|
|
| struct incomplete_array
|
|
| {
|
|
| int datasize;
|
|
| double data[];
|
|
| };
|
|
|
|
|
| struct named_init {
|
|
| int number;
|
|
| const wchar_t *name;
|
|
| double average;
|
|
| };
|
|
|
|
|
| typedef const char *ccp;
|
|
|
|
|
| static inline int
|
|
| test_restrict (ccp restrict text)
|
|
| {
|
|
| // See if C++-style comments work.
|
|
| // Iterate through items via the restricted pointer.
|
|
| // Also check for declarations in for loops.
|
|
| for (unsigned int i = 0; *(text+i) != '\0'; ++i)
|
|
| continue;
|
|
| return 0;
|
|
| }
|
|
|
|
|
| // Check varargs and va_copy.
|
|
| static bool
|
|
| test_varargs (const char *format, ...)
|
|
| {
|
|
| va_list args;
|
|
| va_start (args, format);
|
|
| va_list args_copy;
|
|
| va_copy (args_copy, args);
|
|
|
|
|
| const char *str = "";
|
|
| int number = 0;
|
|
| float fnumber = 0;
|
|
|
|
|
| while (*format)
|
|
| {
|
|
| switch (*format++)
|
|
| {
|
|
| case 's': // string
|
|
| str = va_arg (args_copy, const char *);
|
|
| break;
|
|
| case 'd': // int
|
|
| number = va_arg (args_copy, int);
|
|
| break;
|
|
| case 'f': // float
|
|
| fnumber = va_arg (args_copy, double);
|
|
| break;
|
|
| default:
|
|
| break;
|
|
| }
|
|
| }
|
|
| va_end (args_copy);
|
|
| va_end (args);
|
|
|
|
|
| return *str && number && fnumber;
|
|
| }
|
|
|
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
|
|
|
| // Check bool.
|
|
| _Bool success = false;
|
|
| success |= (argc != 0);
|
|
|
|
|
| // Check restrict.
|
|
| if (test_restrict ("String literal") == 0)
|
|
| success = true;
|
|
| char *restrict newvar = "Another string";
|
|
|
|
|
| // Check varargs.
|
|
| success &= test_varargs ("s, d' f .", "string", 65, 34.234);
|
|
| test_varargs_macros ();
|
|
|
|
|
| // Check flexible array members.
|
|
| struct incomplete_array *ia =
|
|
| malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
|
|
| ia->datasize = 10;
|
|
| for (int i = 0; i < ia->datasize; ++i)
|
|
| ia->data[i] = i * 1.234;
|
|
|
|
|
| // Check named initializers.
|
|
| struct named_init ni = {
|
|
| .number = 34,
|
|
| .name = L"Test wide string",
|
|
| .average = 543.34343,
|
|
| };
|
|
|
|
|
| ni.number = 58;
|
|
|
|
|
| int dynamic_array[ni.number];
|
|
| dynamic_array[0] = argv[0][0];
|
|
| dynamic_array[ni.number - 1] = 543;
|
|
|
|
|
| // work around unused variable warnings
|
|
| ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
|
|
| || dynamic_array[ni.number - 1] != 543);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5356: result: unsupported
|
|
configure:5374: checking for g++ option to enable C89 features
|
|
configure:5389: g++ -c conftest.c >&5
|
|
conftest.c:23:17: error: 'p' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:20: error: 'i' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:21: error: expression list treated as compound expression in initializer [-fpermissive]
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:26:1: error: expected unqualified-id before '{' token
|
|
26 | {
|
|
| ^
|
|
conftest.c: In function 'int main(int, char**)':
|
|
conftest.c:64:24: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
64 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:64:53: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
64 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
configure:5389: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5389: g++ -qlanglvl=extc89 -c conftest.c >&5
|
|
g++: error: unrecognized command-line option '-qlanglvl=extc89'
|
|
configure:5389: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5389: g++ -qlanglvl=ansi -c conftest.c >&5
|
|
g++: error: unrecognized command-line option '-qlanglvl=ansi'
|
|
configure:5389: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5389: g++ -std -c conftest.c >&5
|
|
g++: error: unrecognized command-line option '-std'
|
|
configure:5389: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5389: g++ -Ae -c conftest.c >&5
|
|
<command-line>: error: missing '(' after predicate
|
|
conftest.c:23:17: error: 'p' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:20: error: 'i' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:21: error: expression list treated as compound expression in initializer [-fpermissive]
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:26:1: error: expected unqualified-id before '{' token
|
|
26 | {
|
|
| ^
|
|
conftest.c: In function 'int main(int, char**)':
|
|
conftest.c:64:24: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
64 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:64:53: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
64 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
configure:5389: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5389: g++ -Aa -D_HPUX_SOURCE -c conftest.c >&5
|
|
<command-line>: error: missing '(' after predicate
|
|
conftest.c:23:17: error: 'p' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:20: error: 'i' was not declared in this scope
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:23:21: error: expression list treated as compound expression in initializer [-fpermissive]
|
|
23 | static char *e (p, i)
|
|
| ^
|
|
conftest.c:26:1: error: expected unqualified-id before '{' token
|
|
26 | {
|
|
| ^
|
|
conftest.c: In function 'int main(int, char**)':
|
|
conftest.c:64:24: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
64 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
conftest.c:64:53: error: cannot convert 'char*' to 'char* (*)(char**, int)'
|
|
64 | ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
| ^
|
|
| |
|
|
| char*
|
|
conftest.c:29:26: note: initializing argument 1 of 'char* f(char* (*)(char**, int), char**, ...)'
|
|
29 | static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
|
|
configure:5389: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5389: g++ -Xc -D__EXTENSIONS__ -c conftest.c >&5
|
|
g++: error: unrecognized command-line option '-Xc'; did you mean '-X'?
|
|
configure:5389: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| /* Does the compiler advertise C89 conformance?
|
|
| Do not test the value of __STDC__, because some compilers set it to 0
|
|
| while being otherwise adequately conformant. */
|
|
| #if !defined __STDC__
|
|
| # error "Compiler does not advertise C89 conformance"
|
|
| #endif
|
|
|
|
|
| #include <stddef.h>
|
|
| #include <stdarg.h>
|
|
| struct stat;
|
|
| /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */
|
|
| struct buf { int x; };
|
|
| struct buf * (*rcsopen) (struct buf *, struct stat *, int);
|
|
| static char *e (p, i)
|
|
| char **p;
|
|
| int i;
|
|
| {
|
|
| return p[i];
|
|
| }
|
|
| static char *f (char * (*g) (char **, int), char **p, ...)
|
|
| {
|
|
| char *s;
|
|
| va_list v;
|
|
| va_start (v,p);
|
|
| s = g (p, va_arg (v,int));
|
|
| va_end (v);
|
|
| return s;
|
|
| }
|
|
|
|
|
| /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
|
|
| function prototypes and stuff, but not \xHH hex character constants.
|
|
| These do not provoke an error unfortunately, instead are silently treated
|
|
| as an "x". The following induces an error, until -std is added to get
|
|
| proper ANSI mode. Curiously \x00 != x always comes out true, for an
|
|
| array size at least. It is necessary to write \x00 == 0 to get something
|
|
| that is true only with -std. */
|
|
| int osf4_cc_array ['\x00' == 0 ? 1 : -1];
|
|
|
|
|
| /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
|
|
| inside strings and character constants. */
|
|
| #define FOO(x) 'x'
|
|
| int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
|
|
|
|
|
| int test (int i, double x);
|
|
| struct s1 {int (*f) (int a);};
|
|
| struct s2 {int (*f) (double a);};
|
|
| int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
|
|
| int, int);
|
|
|
|
|
| int
|
|
| main (int argc, char **argv)
|
|
| {
|
|
| int ok = 0;
|
|
|
|
|
| ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
|
|
|
|
|
| return ok;
|
|
| }
|
|
|
|
|
configure:5402: result: unsupported
|
|
configure:5431: checking whether g++ understands -c and -o together
|
|
configure:5454: g++ -c conftest.c -o conftest2.o
|
|
configure:5457: $? = 0
|
|
configure:5454: g++ -c conftest.c -o conftest2.o
|
|
configure:5457: $? = 0
|
|
configure:5469: result: yes
|
|
configure:5488: checking dependency style of g++
|
|
configure:5600: result: gcc3
|
|
configure:5617: checking whether we are using a Clang/LLVM C compiler
|
|
configure:5644: g++ -c conftest.c >&5
|
|
conftest.c: In function 'int main()':
|
|
conftest.c:15:5: error: 'clang' was not declared in this scope
|
|
15 | not clang
|
|
| ^~~~~
|
|
configure:5644: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| int
|
|
| main (void)
|
|
| {
|
|
|
|
|
| #ifndef __clang__
|
|
| not clang
|
|
| #endif
|
|
|
|
|
| ;
|
|
| return 0;
|
|
| }
|
|
configure:5658: result: no
|
|
configure:5716: checking for ar
|
|
configure:5737: found /usr/bin/ar
|
|
configure:5748: result: ar
|
|
configure:5774: checking the archiver (ar) interface
|
|
configure:5791: g++ -c conftest.c >&5
|
|
configure:5791: $? = 0
|
|
configure:5794: ar cru libconftest.a conftest.o >&5
|
|
ar: `u' modifier ignored since `D' is the default (see `U')
|
|
configure:5797: $? = 0
|
|
configure:5825: result: ar
|
|
configure:5857: checking dependency style of g++
|
|
configure:5967: result: gcc3
|
|
configure:5983: checking whether ln -s works
|
|
configure:5987: result: yes
|
|
configure:6320: checking for the pthreads library -lpthreads
|
|
configure:6358: g++ -o conftest conftest.c -lpthreads >&5
|
|
/usr/bin/ld: cannot find -lpthreads: No such file or directory
|
|
collect2: error: ld returned 1 exit status
|
|
configure:6358: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| /* end confdefs.h. */
|
|
| #include <pthread.h>
|
|
| static void routine(void *a) { a = 0; }
|
|
| static void *start_routine(void *a) { return a; }
|
|
| int
|
|
| main (void)
|
|
| {
|
|
| pthread_t th; pthread_attr_t attr;
|
|
| pthread_create(&th, 0, start_routine, 0);
|
|
| pthread_join(th, 0);
|
|
| pthread_attr_init(&attr);
|
|
| pthread_cleanup_push(routine, 0);
|
|
| pthread_cleanup_pop(0) /* ; */
|
|
| ;
|
|
| return 0;
|
|
| }
|
|
configure:6368: result: no
|
|
configure:6260: checking whether pthreads work without any flags
|
|
configure:6358: g++ -o conftest conftest.c >&5
|
|
configure:6358: $? = 0
|
|
configure:6368: result: yes
|
|
configure:6387: checking for joinable pthread attribute
|
|
configure:6402: g++ -o conftest conftest.c >&5
|
|
configure:6402: $? = 0
|
|
configure:6409: result: PTHREAD_CREATE_JOINABLE
|
|
configure:6417: checking if more special flags are required for pthreads
|
|
configure:6431: result: no
|
|
configure:6437: checking for PTHREAD_PRIO_INHERIT
|
|
configure:6456: g++ -o conftest conftest.c >&5
|
|
configure:6456: $? = 0
|
|
configure:6466: result: yes
|
|
configure:6613: checking how to print strings
|
|
configure:6640: result: printf
|
|
configure:6661: checking for a sed that does not truncate output
|
|
configure:6731: result: /usr/bin/sed
|
|
configure:6749: checking for grep that handles long lines and -e
|
|
configure:6813: result: /usr/bin/grep
|
|
configure:6818: checking for egrep
|
|
configure:6886: result: /usr/bin/grep -E
|
|
configure:6891: checking for fgrep
|
|
configure:6959: result: /usr/bin/grep -F
|
|
configure:6995: checking for ld used by g++
|
|
configure:7063: result: /usr/bin/ld
|
|
configure:7070: checking if the linker (/usr/bin/ld) is GNU ld
|
|
configure:7086: result: yes
|
|
configure:7098: checking for BSD- or MS-compatible name lister (nm)
|
|
configure:7148: result: /usr/bin/nm -B
|
|
configure:7288: checking the name lister (/usr/bin/nm -B) interface
|
|
configure:7296: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:7299: /usr/bin/nm -B "conftest.o"
|
|
configure:7302: output
|
|
0000000000000000 B some_variable
|
|
configure:7309: result: BSD nm
|
|
configure:7313: checking the maximum length of command line arguments
|
|
configure:7444: result: 1572864
|
|
configure:7461: checking whether the shell understands some XSI constructs
|
|
configure:7471: result: yes
|
|
configure:7475: checking whether the shell understands "+="
|
|
configure:7481: result: yes
|
|
configure:7516: checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format
|
|
configure:7557: result: func_convert_file_noop
|
|
configure:7564: checking how to convert x86_64-unknown-linux-gnu file names to toolchain format
|
|
configure:7585: result: func_convert_file_noop
|
|
configure:7592: checking for /usr/bin/ld option to reload object files
|
|
configure:7600: result: -r
|
|
configure:7679: checking for objdump
|
|
configure:7700: found /usr/bin/objdump
|
|
configure:7711: result: objdump
|
|
configure:7743: checking how to recognize dependent libraries
|
|
configure:7946: result: pass_all
|
|
configure:8036: checking for dlltool
|
|
configure:8071: result: no
|
|
configure:8101: checking how to associate runtime and link libraries
|
|
configure:8129: result: printf %s\n
|
|
configure:8263: checking for archiver @FILE support
|
|
configure:8281: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:8281: $? = 0
|
|
configure:8285: ar cr libconftest.a @conftest.lst >&5
|
|
configure:8288: $? = 0
|
|
configure:8293: ar cr libconftest.a @conftest.lst >&5
|
|
ar: conftest.o: No such file or directory
|
|
configure:8296: $? = 1
|
|
configure:8308: result: @
|
|
configure:8371: checking for strip
|
|
configure:8392: found /usr/bin/strip
|
|
configure:8403: result: strip
|
|
configure:8480: checking for ranlib
|
|
configure:8501: found /usr/bin/ranlib
|
|
configure:8512: result: ranlib
|
|
configure:8614: checking command to parse /usr/bin/nm -B output from g++ object
|
|
configure:8735: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:8738: $? = 0
|
|
configure:8742: /usr/bin/nm -B conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | sed '/ __gnu_lto/d' \> conftest.nm
|
|
configure:8745: $? = 0
|
|
configure:8811: g++ -o conftest -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp conftstm.o >&5
|
|
configure:8814: $? = 0
|
|
configure:8852: result: ok
|
|
configure:8889: checking for sysroot
|
|
configure:8920: result: no
|
|
configure:8998: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:9001: $? = 0
|
|
configure:9184: checking for mt
|
|
configure:9219: result: no
|
|
configure:9239: checking if : is a manifest tool
|
|
configure:9246: : '-?'
|
|
configure:9254: result: no
|
|
configure:9949: checking for stdio.h
|
|
configure:9949: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:9949: $? = 0
|
|
configure:9949: result: yes
|
|
configure:9949: checking for stdlib.h
|
|
configure:9949: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:9949: $? = 0
|
|
configure:9949: result: yes
|
|
configure:9949: checking for string.h
|
|
configure:9949: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:9949: $? = 0
|
|
configure:9949: result: yes
|
|
configure:9949: checking for inttypes.h
|
|
configure:9949: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:9949: $? = 0
|
|
configure:9949: result: yes
|
|
configure:9949: checking for stdint.h
|
|
configure:9949: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:9949: $? = 0
|
|
configure:9949: result: yes
|
|
configure:9949: checking for strings.h
|
|
configure:9949: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:9949: $? = 0
|
|
configure:9949: result: yes
|
|
configure:9949: checking for sys/stat.h
|
|
configure:9949: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:9949: $? = 0
|
|
configure:9949: result: yes
|
|
configure:9949: checking for sys/types.h
|
|
configure:9949: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:9949: $? = 0
|
|
configure:9949: result: yes
|
|
configure:9949: checking for unistd.h
|
|
configure:9949: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:9949: $? = 0
|
|
configure:9949: result: yes
|
|
configure:9974: checking for dlfcn.h
|
|
configure:9974: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:9974: $? = 0
|
|
configure:9974: result: yes
|
|
configure:10191: checking for objdir
|
|
configure:10207: result: .libs
|
|
configure:10478: checking if g++ supports -fno-rtti -fno-exceptions
|
|
configure:10497: g++ -c -fno-rtti -fno-exceptions conftest.c >&5
|
|
configure:10501: $? = 0
|
|
configure:10514: result: yes
|
|
configure:10841: checking for g++ option to produce PIC
|
|
configure:10849: result: -fPIC -DPIC
|
|
configure:10857: checking if g++ PIC flag -fPIC -DPIC works
|
|
configure:10876: g++ -c -fPIC -DPIC -DPIC conftest.c >&5
|
|
configure:10880: $? = 0
|
|
configure:10893: result: yes
|
|
configure:10922: checking if g++ static flag -static works
|
|
configure:10951: result: yes
|
|
configure:10966: checking if g++ supports -c -o file.o
|
|
configure:10988: g++ -c -o out/conftest2.o conftest.c >&5
|
|
configure:10992: $? = 0
|
|
configure:11014: result: yes
|
|
configure:11022: checking if g++ supports -c -o file.o
|
|
configure:11070: result: yes
|
|
configure:11103: checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries
|
|
configure:12263: result: yes
|
|
configure:12300: checking whether -lc should be explicitly linked in
|
|
configure:12309: g++ -c conftest.c >&5
|
|
configure:12312: $? = 0
|
|
configure:12327: g++ -shared -fPIC -DPIC conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| /usr/bin/grep -lc \>/dev/null 2\>\&1
|
|
configure:12330: $? = 0
|
|
configure:12344: result: no
|
|
configure:12504: checking dynamic linker characteristics
|
|
configure:13016: g++ -o conftest -Wl,-rpath -Wl,/foo conftest.c >&5
|
|
configure:13016: $? = 0
|
|
configure:13240: result: GNU/Linux ld.so
|
|
configure:13347: checking how to hardcode library paths into programs
|
|
configure:13372: result: immediate
|
|
configure:13916: checking whether stripping libraries is possible
|
|
configure:13921: result: yes
|
|
configure:13956: checking if libtool supports shared libraries
|
|
configure:13958: result: yes
|
|
configure:13961: checking whether to build shared libraries
|
|
configure:13982: result: yes
|
|
configure:13985: checking whether to build static libraries
|
|
configure:13989: result: yes
|
|
configure:14012: checking how to run the C++ preprocessor
|
|
configure:14034: g++ -E conftest.cpp
|
|
configure:14034: $? = 0
|
|
configure:14049: g++ -E conftest.cpp
|
|
conftest.cpp:23:10: fatal error: ac_nonexistent.h: No such file or directory
|
|
23 | #include <ac_nonexistent.h>
|
|
| ^~~~~~~~~~~~~~~~~~
|
|
compilation terminated.
|
|
configure:14049: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| #define HAVE_PTHREAD_PRIO_INHERIT 1
|
|
| #define HAVE_PTHREAD 1
|
|
| #define HAVE_STDIO_H 1
|
|
| #define HAVE_STDLIB_H 1
|
|
| #define HAVE_STRING_H 1
|
|
| #define HAVE_INTTYPES_H 1
|
|
| #define HAVE_STDINT_H 1
|
|
| #define HAVE_STRINGS_H 1
|
|
| #define HAVE_SYS_STAT_H 1
|
|
| #define HAVE_SYS_TYPES_H 1
|
|
| #define HAVE_UNISTD_H 1
|
|
| #define STDC_HEADERS 1
|
|
| #define HAVE_DLFCN_H 1
|
|
| #define LT_OBJDIR ".libs/"
|
|
| /* end confdefs.h. */
|
|
| #include <ac_nonexistent.h>
|
|
configure:14076: result: g++ -E
|
|
configure:14090: g++ -E conftest.cpp
|
|
configure:14090: $? = 0
|
|
configure:14105: g++ -E conftest.cpp
|
|
conftest.cpp:23:10: fatal error: ac_nonexistent.h: No such file or directory
|
|
23 | #include <ac_nonexistent.h>
|
|
| ^~~~~~~~~~~~~~~~~~
|
|
compilation terminated.
|
|
configure:14105: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| #define HAVE_PTHREAD_PRIO_INHERIT 1
|
|
| #define HAVE_PTHREAD 1
|
|
| #define HAVE_STDIO_H 1
|
|
| #define HAVE_STDLIB_H 1
|
|
| #define HAVE_STRING_H 1
|
|
| #define HAVE_INTTYPES_H 1
|
|
| #define HAVE_STDINT_H 1
|
|
| #define HAVE_STRINGS_H 1
|
|
| #define HAVE_SYS_STAT_H 1
|
|
| #define HAVE_SYS_TYPES_H 1
|
|
| #define HAVE_UNISTD_H 1
|
|
| #define STDC_HEADERS 1
|
|
| #define HAVE_DLFCN_H 1
|
|
| #define LT_OBJDIR ".libs/"
|
|
| /* end confdefs.h. */
|
|
| #include <ac_nonexistent.h>
|
|
configure:14277: checking for ld used by g++
|
|
configure:14345: result: /usr/bin/ld -m elf_x86_64
|
|
configure:14352: checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld
|
|
configure:14368: result: yes
|
|
configure:14423: checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries
|
|
configure:15432: result: yes
|
|
configure:15468: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
configure:15471: $? = 0
|
|
configure:15991: checking for g++ option to produce PIC
|
|
configure:15999: result: -fPIC -DPIC
|
|
configure:16007: checking if g++ PIC flag -fPIC -DPIC works
|
|
configure:16026: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 -fPIC -DPIC -DPIC conftest.cpp >&5
|
|
configure:16030: $? = 0
|
|
configure:16043: result: yes
|
|
configure:16066: checking if g++ static flag -static works
|
|
configure:16095: result: yes
|
|
configure:16107: checking if g++ supports -c -o file.o
|
|
configure:16129: g++ -c -Wall -m64 -D_GLIBCXX_USE_CXX11_ABI=1 -o out/conftest2.o conftest.cpp >&5
|
|
configure:16133: $? = 0
|
|
configure:16155: result: yes
|
|
configure:16160: checking if g++ supports -c -o file.o
|
|
configure:16208: result: yes
|
|
configure:16238: checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries
|
|
configure:16274: result: yes
|
|
configure:16416: checking dynamic linker characteristics
|
|
configure:17086: result: GNU/Linux ld.so
|
|
configure:17139: checking how to hardcode library paths into programs
|
|
configure:17164: result: immediate
|
|
configure:17228: checking for SystemC install layout
|
|
configure:17255: result: ignored
|
|
configure:17311: checking for SystemC library arch suffix
|
|
configure:17332: result: default (TARGET_ARCH=linux64)
|
|
configure:17335: checking whether to add debug symbols to the SystemC library
|
|
configure:17358: result: no
|
|
configure:17361: checking whether to enable compiler optimization
|
|
configure:17384: result: yes
|
|
configure:17387: checking whether to add support for asynchronous update requests
|
|
configure:17436: result: yes
|
|
configure:17439: checking whether to use POSIX threads for SystemC processes
|
|
configure:17510: result: no
|
|
configure:17513: checking whether to enable simulation phase callbacks (experimental)
|
|
configure:17548: result: no
|
|
configure:17551: checking whether to enable VCD scopes by default
|
|
configure:17576: result: yes
|
|
configure:17643: checking for SC_DISABLE_VIRTUAL_BIND defined
|
|
configure:17666: g++ -c -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
conftest.cpp: In function 'int main()':
|
|
conftest.cpp:31:3: error: 'choke' was not declared in this scope
|
|
31 | choke me
|
|
| ^~~~~
|
|
configure:17666: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| #define HAVE_PTHREAD_PRIO_INHERIT 1
|
|
| #define HAVE_PTHREAD 1
|
|
| #define HAVE_STDIO_H 1
|
|
| #define HAVE_STDLIB_H 1
|
|
| #define HAVE_STRING_H 1
|
|
| #define HAVE_INTTYPES_H 1
|
|
| #define HAVE_STDINT_H 1
|
|
| #define HAVE_STRINGS_H 1
|
|
| #define HAVE_SYS_STAT_H 1
|
|
| #define HAVE_SYS_TYPES_H 1
|
|
| #define HAVE_UNISTD_H 1
|
|
| #define STDC_HEADERS 1
|
|
| #define HAVE_DLFCN_H 1
|
|
| #define LT_OBJDIR ".libs/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| int
|
|
| main (void)
|
|
| {
|
|
|
|
|
| #ifdef SC_DISABLE_VIRTUAL_BIND
|
|
| int ok;
|
|
| #else
|
|
| choke me
|
|
| #endif
|
|
|
|
|
| ;
|
|
| return 0;
|
|
| }
|
|
configure:17674: result: no
|
|
configure:17683: checking for SC_ENABLE_IMMEDIATE_SELF_NOTIFICATION defined
|
|
configure:17706: g++ -c -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
conftest.cpp: In function 'int main()':
|
|
conftest.cpp:31:3: error: 'choke' was not declared in this scope
|
|
31 | choke me
|
|
| ^~~~~
|
|
configure:17706: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| #define HAVE_PTHREAD_PRIO_INHERIT 1
|
|
| #define HAVE_PTHREAD 1
|
|
| #define HAVE_STDIO_H 1
|
|
| #define HAVE_STDLIB_H 1
|
|
| #define HAVE_STRING_H 1
|
|
| #define HAVE_INTTYPES_H 1
|
|
| #define HAVE_STDINT_H 1
|
|
| #define HAVE_STRINGS_H 1
|
|
| #define HAVE_SYS_STAT_H 1
|
|
| #define HAVE_SYS_TYPES_H 1
|
|
| #define HAVE_UNISTD_H 1
|
|
| #define STDC_HEADERS 1
|
|
| #define HAVE_DLFCN_H 1
|
|
| #define LT_OBJDIR ".libs/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| int
|
|
| main (void)
|
|
| {
|
|
|
|
|
| #ifdef SC_ENABLE_IMMEDIATE_SELF_NOTIFICATION
|
|
| int ok;
|
|
| #else
|
|
| choke me
|
|
| #endif
|
|
|
|
|
| ;
|
|
| return 0;
|
|
| }
|
|
configure:17714: result: no
|
|
configure:17722: checking for SC_ENABLE_EARLY_MAXTIME_CREATION defined
|
|
configure:17745: g++ -c -D_GLIBCXX_USE_CXX11_ABI=1 conftest.cpp >&5
|
|
conftest.cpp: In function 'int main()':
|
|
conftest.cpp:31:3: error: 'choke' was not declared in this scope
|
|
31 | choke me
|
|
| ^~~~~
|
|
configure:17745: $? = 1
|
|
configure: failed program was:
|
|
| /* confdefs.h */
|
|
| #define PACKAGE_NAME "SystemC"
|
|
| #define PACKAGE_TARNAME "systemc"
|
|
| #define PACKAGE_VERSION "2.3.4"
|
|
| #define PACKAGE_STRING "SystemC 2.3.4"
|
|
| #define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
| #define PACKAGE_URL "http://accellera.org/"
|
|
| #define HAVE_PTHREAD_PRIO_INHERIT 1
|
|
| #define HAVE_PTHREAD 1
|
|
| #define HAVE_STDIO_H 1
|
|
| #define HAVE_STDLIB_H 1
|
|
| #define HAVE_STRING_H 1
|
|
| #define HAVE_INTTYPES_H 1
|
|
| #define HAVE_STDINT_H 1
|
|
| #define HAVE_STRINGS_H 1
|
|
| #define HAVE_SYS_STAT_H 1
|
|
| #define HAVE_SYS_TYPES_H 1
|
|
| #define HAVE_UNISTD_H 1
|
|
| #define STDC_HEADERS 1
|
|
| #define HAVE_DLFCN_H 1
|
|
| #define LT_OBJDIR ".libs/"
|
|
| /* end confdefs.h. */
|
|
|
|
|
| int
|
|
| main (void)
|
|
| {
|
|
|
|
|
| #ifdef SC_ENABLE_EARLY_MAXTIME_CREATION
|
|
| int ok;
|
|
| #else
|
|
| choke me
|
|
| #endif
|
|
|
|
|
| ;
|
|
| return 0;
|
|
| }
|
|
configure:17753: result: no
|
|
configure:17916: checking that generated files are newer than configure
|
|
configure:17922: result: done
|
|
configure:18021: creating ./config.status
|
|
---------------------------------------------------------------------
|
|
Configuration summary of SystemC 2.3.4 for x86_64-unknown-linux-gnu
|
|
---------------------------------------------------------------------
|
|
|
|
Directory setup (based on classic layout):
|
|
Installation prefix (aka SYSTEMC_HOME):
|
|
/home/common_share/systemc
|
|
Header files : <SYSTEMC_HOME>/include
|
|
Libraries : <SYSTEMC_HOME>/lib-linux64
|
|
Documentation : <SYSTEMC_HOME>/docs
|
|
Examples : <SYSTEMC_HOME>/examples
|
|
|
|
Architecture : linux64
|
|
Compiler : g++ (C/C++)
|
|
|
|
User-provided command-line flags :
|
|
C++ compiler flags (CXXFLAGS) : -D_GLIBCXX_USE_CXX11_ABI=1
|
|
|
|
Build settings:
|
|
Enable compiler optimizations : yes
|
|
Include debugging symbols : no
|
|
Coroutine package for processes: QuickThreads
|
|
Enable VCD scopes by default : yes
|
|
Disable async_request_update : no
|
|
Phase callbacks (experimental) : no
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
## ---------------- ##
|
|
## Cache variables. ##
|
|
## ---------------- ##
|
|
|
|
ac_cv_build=x86_64-unknown-linux-gnu
|
|
ac_cv_c_compiler_gnu=yes
|
|
ac_cv_cxx_compiler_gnu=yes
|
|
ac_cv_defined_SC_DISABLE_VIRTUAL_BIND=no
|
|
ac_cv_defined_SC_ENABLE_EARLY_MAXTIME_CREATION=no
|
|
ac_cv_defined_SC_ENABLE_IMMEDIATE_SELF_NOTIFICATION=no
|
|
ac_cv_env_CCASFLAGS_set=
|
|
ac_cv_env_CCASFLAGS_value=
|
|
ac_cv_env_CCAS_set=
|
|
ac_cv_env_CCAS_value=
|
|
ac_cv_env_CCC_set=
|
|
ac_cv_env_CCC_value=
|
|
ac_cv_env_CC_set=
|
|
ac_cv_env_CC_value=
|
|
ac_cv_env_CFLAGS_set=
|
|
ac_cv_env_CFLAGS_value=
|
|
ac_cv_env_CPPFLAGS_set=
|
|
ac_cv_env_CPPFLAGS_value=
|
|
ac_cv_env_CXXCPP_set=
|
|
ac_cv_env_CXXCPP_value=
|
|
ac_cv_env_CXXFLAGS_set=set
|
|
ac_cv_env_CXXFLAGS_value=-D_GLIBCXX_USE_CXX11_ABI=1
|
|
ac_cv_env_CXX_set=set
|
|
ac_cv_env_CXX_value=g++
|
|
ac_cv_env_LDFLAGS_set=
|
|
ac_cv_env_LDFLAGS_value=
|
|
ac_cv_env_LIBS_set=
|
|
ac_cv_env_LIBS_value=
|
|
ac_cv_env_build_alias_set=
|
|
ac_cv_env_build_alias_value=
|
|
ac_cv_env_host_alias_set=
|
|
ac_cv_env_host_alias_value=
|
|
ac_cv_env_target_alias_set=
|
|
ac_cv_env_target_alias_value=
|
|
ac_cv_header_dlfcn_h=yes
|
|
ac_cv_header_inttypes_h=yes
|
|
ac_cv_header_stdint_h=yes
|
|
ac_cv_header_stdio_h=yes
|
|
ac_cv_header_stdlib_h=yes
|
|
ac_cv_header_string_h=yes
|
|
ac_cv_header_strings_h=yes
|
|
ac_cv_header_sys_stat_h=yes
|
|
ac_cv_header_sys_types_h=yes
|
|
ac_cv_header_unistd_h=yes
|
|
ac_cv_host=x86_64-unknown-linux-gnu
|
|
ac_cv_objext=o
|
|
ac_cv_path_EGREP='/usr/bin/grep -E'
|
|
ac_cv_path_FGREP='/usr/bin/grep -F'
|
|
ac_cv_path_GREP=/usr/bin/grep
|
|
ac_cv_path_SED=/usr/bin/sed
|
|
ac_cv_path_install='/usr/bin/install -c'
|
|
ac_cv_path_mkdir=/usr/bin/mkdir
|
|
ac_cv_prog_AWK=mawk
|
|
ac_cv_prog_CXXCPP='g++ -E'
|
|
ac_cv_prog_ac_ct_AR=ar
|
|
ac_cv_prog_ac_ct_CC=g++
|
|
ac_cv_prog_ac_ct_OBJDUMP=objdump
|
|
ac_cv_prog_ac_ct_RANLIB=ranlib
|
|
ac_cv_prog_ac_ct_STRIP=strip
|
|
ac_cv_prog_cc_c11=no
|
|
ac_cv_prog_cc_c89=no
|
|
ac_cv_prog_cc_c99=no
|
|
ac_cv_prog_cc_g=yes
|
|
ac_cv_prog_cxx_11=no
|
|
ac_cv_prog_cxx_cxx11=
|
|
ac_cv_prog_cxx_g=yes
|
|
ac_cv_prog_cxx_stdcxx=
|
|
ac_cv_prog_make_make_set=yes
|
|
ac_cv_target=x86_64-unknown-linux-gnu
|
|
am_cv_CCAS_dependencies_compiler_type=gcc3
|
|
am_cv_CC_dependencies_compiler_type=gcc3
|
|
am_cv_CXX_dependencies_compiler_type=gcc3
|
|
am_cv_ar_interface=ar
|
|
am_cv_make_support_nested_variables=yes
|
|
am_cv_prog_cc_c_o=yes
|
|
am_cv_prog_tar_pax=gnutar
|
|
ax_cv_PTHREAD_PRIO_INHERIT=yes
|
|
lt_cv_ar_at_file=@
|
|
lt_cv_archive_cmds_need_lc=no
|
|
lt_cv_deplibs_check_method=pass_all
|
|
lt_cv_file_magic_cmd='$MAGIC_CMD'
|
|
lt_cv_file_magic_test_file=
|
|
lt_cv_ld_reload_flag=-r
|
|
lt_cv_nm_interface='BSD nm'
|
|
lt_cv_objdir=.libs
|
|
lt_cv_path_LD=/usr/bin/ld
|
|
lt_cv_path_LDCXX='/usr/bin/ld -m elf_x86_64'
|
|
lt_cv_path_NM='/usr/bin/nm -B'
|
|
lt_cv_path_mainfest_tool=no
|
|
lt_cv_prog_compiler_c_o=yes
|
|
lt_cv_prog_compiler_c_o_CXX=yes
|
|
lt_cv_prog_compiler_pic='-fPIC -DPIC'
|
|
lt_cv_prog_compiler_pic_CXX='-fPIC -DPIC'
|
|
lt_cv_prog_compiler_pic_works=yes
|
|
lt_cv_prog_compiler_pic_works_CXX=yes
|
|
lt_cv_prog_compiler_rtti_exceptions=yes
|
|
lt_cv_prog_compiler_static_works=yes
|
|
lt_cv_prog_compiler_static_works_CXX=yes
|
|
lt_cv_prog_gnu_ld=yes
|
|
lt_cv_prog_gnu_ldcxx=yes
|
|
lt_cv_sharedlib_from_linklib_cmd='printf %s\n'
|
|
lt_cv_shlibpath_overrides_runpath=yes
|
|
lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'' | sed '\''/ __gnu_lto/d'\'''
|
|
lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\'''
|
|
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\'''
|
|
lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\'''
|
|
lt_cv_sys_max_cmd_len=1572864
|
|
lt_cv_to_host_file_cmd=func_convert_file_noop
|
|
lt_cv_to_tool_file_cmd=func_convert_file_noop
|
|
sc_cv_clang=no
|
|
sc_cv_clangxx=no
|
|
|
|
## ----------------- ##
|
|
## Output variables. ##
|
|
## ----------------- ##
|
|
|
|
ACLOCAL='${SHELL} '\''/home/common_share/systemc/config/missing'\'' aclocal-1.16'
|
|
AMDEPBACKSLASH='\'
|
|
AMDEP_FALSE='#'
|
|
AMDEP_TRUE=''
|
|
AMTAR='$${TAR-tar}'
|
|
AM_BACKSLASH='\'
|
|
AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
|
|
AM_DEFAULT_VERBOSITY='0'
|
|
AM_V='$(V)'
|
|
AR='ar'
|
|
AUTOCONF='${SHELL} '\''/home/common_share/systemc/config/missing'\'' autoconf'
|
|
AUTOHEADER='${SHELL} '\''/home/common_share/systemc/config/missing'\'' autoheader'
|
|
AUTOMAKE='${SHELL} '\''/home/common_share/systemc/config/missing'\'' automake-1.16'
|
|
AWK='mawk'
|
|
CC='g++'
|
|
CCAS='g++'
|
|
CCASDEPMODE='depmode=gcc3'
|
|
CCASFLAGS=''
|
|
CCDEPMODE='depmode=gcc3'
|
|
CFLAGS=''
|
|
CPPFLAGS=''
|
|
CSCOPE='cscope'
|
|
CTAGS='ctags'
|
|
CXX='g++'
|
|
CXXCPP='g++ -E'
|
|
CXXDEPMODE='depmode=gcc3'
|
|
CXXFLAGS='-D_GLIBCXX_USE_CXX11_ABI=1'
|
|
CYGPATH_W='echo'
|
|
DEBUG_CXXFLAGS='-g'
|
|
DEFS='-DPACKAGE_NAME=\"SystemC\" -DPACKAGE_TARNAME=\"systemc\" -DPACKAGE_VERSION=\"2.3.4\" -DPACKAGE_STRING=\"SystemC\ 2.3.4\" -DPACKAGE_BUGREPORT=\"http://forums.accellera.org/forum/9-systemc/\" -DPACKAGE_URL=\"http://accellera.org/\" -DHAVE_PTHREAD_PRIO_INHERIT=1 -DHAVE_PTHREAD=1 -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\"'
|
|
DEPDIR='.deps'
|
|
DISABLE_ASYNC_UPDATES_FALSE=''
|
|
DISABLE_ASYNC_UPDATES_TRUE='#'
|
|
DISABLE_VCD_SCOPES_FALSE=''
|
|
DISABLE_VCD_SCOPES_TRUE='#'
|
|
DLLTOOL='false'
|
|
DSYMUTIL=''
|
|
DUMPBIN=''
|
|
ECHO_C=''
|
|
ECHO_N='-n'
|
|
ECHO_T=''
|
|
EGREP='/usr/bin/grep -E'
|
|
ENABLE_CALLBACKS_FALSE=''
|
|
ENABLE_CALLBACKS_TRACING_FALSE=''
|
|
ENABLE_CALLBACKS_TRACING_TRUE='#'
|
|
ENABLE_CALLBACKS_TRUE='#'
|
|
ETAGS='etags'
|
|
EXEEXT=''
|
|
EXPLICIT_LPTHREAD='-lpthread'
|
|
EXTRA_ASFLAGS='-xassembler-with-cpp -m64'
|
|
EXTRA_CFLAGS='-Wall -m64 -xc'
|
|
EXTRA_CXXFLAGS='-Wall -m64'
|
|
EXTRA_LDFLAGS=''
|
|
FGREP='/usr/bin/grep -F'
|
|
GREP='/usr/bin/grep'
|
|
INSTALL_DATA='${INSTALL} -m 644'
|
|
INSTALL_PROGRAM='${INSTALL}'
|
|
INSTALL_SCRIPT='${INSTALL}'
|
|
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
|
|
LD='/usr/bin/ld -m elf_x86_64'
|
|
LDFLAGS=''
|
|
LDFLAG_RPATH='-Wl,-rpath='
|
|
LIBCONFIG_DEFINES=''
|
|
LIBOBJS=''
|
|
LIBS=''
|
|
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
|
|
LIB_ARCH_SUFFIX='-${TARGET_ARCH}'
|
|
LIPO=''
|
|
LN_S='ln -s'
|
|
LTLIBOBJS=''
|
|
MAKEINFO='${SHELL} '\''/home/common_share/systemc/config/missing'\'' makeinfo'
|
|
MANIFEST_TOOL=':'
|
|
MKDIR_P='/usr/bin/mkdir -p'
|
|
NM='/usr/bin/nm -B'
|
|
NMEDIT=''
|
|
OBJDUMP='objdump'
|
|
OBJEXT='o'
|
|
OPT_CXXFLAGS='-O3'
|
|
OTOOL64=''
|
|
OTOOL=''
|
|
PACKAGE='systemc'
|
|
PACKAGE_BUGREPORT='http://forums.accellera.org/forum/9-systemc/'
|
|
PACKAGE_NAME='SystemC'
|
|
PACKAGE_STRING='SystemC 2.3.4'
|
|
PACKAGE_TARNAME='systemc'
|
|
PACKAGE_URL='http://accellera.org/'
|
|
PACKAGE_VERSION='2.3.4'
|
|
PATH_SEPARATOR=':'
|
|
PKGCONFIG_CFLAGS=''
|
|
PKGCONFIG_DEFINES=''
|
|
PKGCONFIG_LDPRIV=' -lpthread'
|
|
PTHREAD_CC='g++'
|
|
PTHREAD_CFLAGS=''
|
|
PTHREAD_LIBS=''
|
|
QT_ARCH='x86_64'
|
|
QT_ARCH_AARCH64_FALSE=''
|
|
QT_ARCH_AARCH64_TRUE='#'
|
|
QT_ARCH_HPPA_FALSE=''
|
|
QT_ARCH_HPPA_TRUE='#'
|
|
QT_ARCH_POWERPC_MACOSX_FALSE=''
|
|
QT_ARCH_POWERPC_MACOSX_TRUE='#'
|
|
QT_ARCH_SPARC_FALSE=''
|
|
QT_ARCH_SPARC_TRUE='#'
|
|
QT_ARCH_X86_64_FALSE='#'
|
|
QT_ARCH_X86_64_TRUE=''
|
|
QT_ARCH_X86_FALSE=''
|
|
QT_ARCH_X86_TRUE='#'
|
|
RANLIB='ranlib'
|
|
SED='/usr/bin/sed'
|
|
SEPARATE_BUILD_TREE_FALSE='#'
|
|
SEPARATE_BUILD_TREE_TRUE=''
|
|
SEPARATE_INSTALL_TREE_FALSE=''
|
|
SEPARATE_INSTALL_TREE_TRUE='#'
|
|
SET_MAKE=''
|
|
SHELL='/bin/bash'
|
|
STRIP='strip'
|
|
TARGET_ARCH='linux64'
|
|
TLM_PACKAGE_VERSION='2.0.6'
|
|
USES_PTHREADS_LIB_FALSE='#'
|
|
USES_PTHREADS_LIB_TRUE=''
|
|
VERSION='2.3.4'
|
|
WANT_DEBUG_FALSE=''
|
|
WANT_DEBUG_TRUE='#'
|
|
WANT_OPTIMIZE_FALSE='#'
|
|
WANT_OPTIMIZE_TRUE=''
|
|
WANT_PTHREADS_THREADS_FALSE=''
|
|
WANT_PTHREADS_THREADS_TRUE='#'
|
|
WANT_QT_THREADS_FALSE='#'
|
|
WANT_QT_THREADS_TRUE=''
|
|
ac_ct_AR='ar'
|
|
ac_ct_CC='g++'
|
|
ac_ct_CXX=''
|
|
ac_ct_DUMPBIN=''
|
|
am__EXEEXT_FALSE=''
|
|
am__EXEEXT_TRUE='#'
|
|
am__fastdepCCAS_FALSE='#'
|
|
am__fastdepCCAS_TRUE=''
|
|
am__fastdepCC_FALSE='#'
|
|
am__fastdepCC_TRUE=''
|
|
am__fastdepCXX_FALSE='#'
|
|
am__fastdepCXX_TRUE=''
|
|
am__include='include'
|
|
am__isrc=' -I$(srcdir)'
|
|
am__leading_dot='.'
|
|
am__nodep='_no'
|
|
am__quote=''
|
|
am__tar='tar --format=posix -chf - "$$tardir"'
|
|
am__untar='tar -xf -'
|
|
ax_pthread_config=''
|
|
bindir='${exec_prefix}/bin'
|
|
build='x86_64-unknown-linux-gnu'
|
|
build_alias=''
|
|
build_cpu='x86_64'
|
|
build_os='linux-gnu'
|
|
build_vendor='unknown'
|
|
datadir='${prefix}'
|
|
datarootdir='${prefix}'
|
|
docdir='${prefix}/docs'
|
|
dvidir='${docdir}'
|
|
examplesdir='${rootdocdir}/examples'
|
|
exec_prefix='${prefix}'
|
|
host='x86_64-unknown-linux-gnu'
|
|
host_alias=''
|
|
host_cpu='x86_64'
|
|
host_os='linux-gnu'
|
|
host_vendor='unknown'
|
|
htmldir='${docdir}'
|
|
includedir='${prefix}/include'
|
|
infodir='${datarootdir}/info'
|
|
install_sh='${SHELL} /home/common_share/systemc/config/install-sh'
|
|
libarchdir='${libdir}${LIB_ARCH_SUFFIX}'
|
|
libdir='${exec_prefix}/lib'
|
|
libexecdir='${exec_prefix}/libexec'
|
|
localedir='${datarootdir}/locale'
|
|
localstatedir='${prefix}/var'
|
|
mandir='${datarootdir}/man'
|
|
mkdir_p='$(MKDIR_P)'
|
|
oldincludedir='/usr/include'
|
|
pdfdir='${docdir}'
|
|
prefix='/home/common_share/systemc'
|
|
program_transform_name='s,x,x,'
|
|
psdir='${docdir}'
|
|
rootdocdir='${prefix}'
|
|
runstatedir='${localstatedir}/run'
|
|
sbindir='${exec_prefix}/sbin'
|
|
sharedstatedir='${prefix}/com'
|
|
sysconfdir='${prefix}/etc'
|
|
target='x86_64-unknown-linux-gnu'
|
|
target_alias=''
|
|
target_cpu='x86_64'
|
|
target_os='linux-gnu'
|
|
target_vendor='unknown'
|
|
|
|
## ----------- ##
|
|
## confdefs.h. ##
|
|
## ----------- ##
|
|
|
|
/* confdefs.h */
|
|
#define PACKAGE_NAME "SystemC"
|
|
#define PACKAGE_TARNAME "systemc"
|
|
#define PACKAGE_VERSION "2.3.4"
|
|
#define PACKAGE_STRING "SystemC 2.3.4"
|
|
#define PACKAGE_BUGREPORT "http://forums.accellera.org/forum/9-systemc/"
|
|
#define PACKAGE_URL "http://accellera.org/"
|
|
#define HAVE_PTHREAD_PRIO_INHERIT 1
|
|
#define HAVE_PTHREAD 1
|
|
#define HAVE_STDIO_H 1
|
|
#define HAVE_STDLIB_H 1
|
|
#define HAVE_STRING_H 1
|
|
#define HAVE_INTTYPES_H 1
|
|
#define HAVE_STDINT_H 1
|
|
#define HAVE_STRINGS_H 1
|
|
#define HAVE_SYS_STAT_H 1
|
|
#define HAVE_SYS_TYPES_H 1
|
|
#define HAVE_UNISTD_H 1
|
|
#define STDC_HEADERS 1
|
|
#define HAVE_DLFCN_H 1
|
|
#define LT_OBJDIR ".libs/"
|
|
|
|
configure: exit 0
|
|
|
|
## ---------------------- ##
|
|
## Running config.status. ##
|
|
## ---------------------- ##
|
|
|
|
This file was extended by SystemC config.status 2.3.4, which was
|
|
generated by GNU Autoconf 2.71. Invocation command line was
|
|
|
|
CONFIG_FILES =
|
|
CONFIG_HEADERS =
|
|
CONFIG_LINKS =
|
|
CONFIG_COMMANDS =
|
|
$ ./config.status
|
|
|
|
on 98ec94af8abc
|
|
|
|
config.status:1144: creating Makefile
|
|
config.status:1144: creating src/Makefile
|
|
config.status:1144: creating src/systemc.pc
|
|
config.status:1144: creating src/tlm.pc
|
|
config.status:1144: creating src/sysc/Makefile
|
|
config.status:1144: creating src/sysc/packages/boost/Makefile
|
|
config.status:1144: creating src/sysc/packages/qt/Makefile
|
|
config.status:1144: creating src/tlm_core/Makefile
|
|
config.status:1144: creating src/tlm_utils/Makefile
|
|
config.status:1144: creating examples/Makefile
|
|
config.status:1144: creating examples/sysc/Makefile
|
|
config.status:1144: creating examples/tlm/Makefile
|
|
config.status:1144: creating examples/tlm/common/Makefile
|
|
config.status:1144: creating docs/Makefile
|
|
config.status:1144: creating docs/sysc/doxygen/Doxyfile
|
|
config.status:1144: creating docs/tlm/doxygen/Doxyfile
|
|
config.status:1301: executing depfiles commands
|
|
config.status:1378: cd src && sed -e '/# am--include-marker/d' Makefile | make -f - am--depfiles
|
|
make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
|
|
make[1]: Entering directory '/home/common_share/systemc/objdir/src'
|
|
make[1]: Nothing to be done for 'am--depfiles'.
|
|
make[1]: Leaving directory '/home/common_share/systemc/objdir/src'
|
|
config.status:1383: $? = 0
|
|
config.status:1378: cd src/sysc && sed -e '/# am--include-marker/d' Makefile | make -f - am--depfiles
|
|
make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
|
|
make[1]: Entering directory '/home/common_share/systemc/objdir/src/sysc'
|
|
make[1]: Nothing to be done for 'am--depfiles'.
|
|
make[1]: Leaving directory '/home/common_share/systemc/objdir/src/sysc'
|
|
config.status:1383: $? = 0
|
|
config.status:1378: cd src/sysc/packages/qt && sed -e '/# am--include-marker/d' Makefile | make -f - am--depfiles
|
|
make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
|
|
make[1]: Entering directory '/home/common_share/systemc/objdir/src/sysc/packages/qt'
|
|
make[1]: Nothing to be done for 'am--depfiles'.
|
|
make[1]: Leaving directory '/home/common_share/systemc/objdir/src/sysc/packages/qt'
|
|
config.status:1383: $? = 0
|
|
config.status:1378: cd src/tlm_core && sed -e '/# am--include-marker/d' Makefile | make -f - am--depfiles
|
|
make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
|
|
make[1]: Entering directory '/home/common_share/systemc/objdir/src/tlm_core'
|
|
make[1]: Nothing to be done for 'am--depfiles'.
|
|
make[1]: Leaving directory '/home/common_share/systemc/objdir/src/tlm_core'
|
|
config.status:1383: $? = 0
|
|
config.status:1378: cd src/tlm_utils && sed -e '/# am--include-marker/d' Makefile | make -f - am--depfiles
|
|
make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
|
|
make[1]: Entering directory '/home/common_share/systemc/objdir/src/tlm_utils'
|
|
make[1]: Nothing to be done for 'am--depfiles'.
|
|
make[1]: Leaving directory '/home/common_share/systemc/objdir/src/tlm_utils'
|
|
config.status:1383: $? = 0
|
|
config.status:1378: cd examples/sysc && sed -e '/# am--include-marker/d' Makefile | make -f - am--depfiles
|
|
make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
|
|
make[1]: Entering directory '/home/common_share/systemc/objdir/examples/sysc'
|
|
make[1]: Nothing to be done for 'am--depfiles'.
|
|
make[1]: Leaving directory '/home/common_share/systemc/objdir/examples/sysc'
|
|
config.status:1383: $? = 0
|
|
config.status:1378: cd examples/tlm && sed -e '/# am--include-marker/d' Makefile | make -f - am--depfiles
|
|
make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
|
|
make[1]: Entering directory '/home/common_share/systemc/objdir/examples/tlm'
|
|
make[1]: Nothing to be done for 'am--depfiles'.
|
|
make[1]: Leaving directory '/home/common_share/systemc/objdir/examples/tlm'
|
|
config.status:1383: $? = 0
|
|
config.status:1378: cd examples/tlm/common && sed -e '/# am--include-marker/d' Makefile | make -f - am--depfiles
|
|
make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
|
|
make[1]: Entering directory '/home/common_share/systemc/objdir/examples/tlm/common'
|
|
make[1]: Nothing to be done for 'am--depfiles'.
|
|
make[1]: Leaving directory '/home/common_share/systemc/objdir/examples/tlm/common'
|
|
config.status:1383: $? = 0
|
|
config.status:1301: executing libtool commands
|