Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 887121 Details for
Bug 926545
sci-electronics/systemc-2.3.4-r2 fails to compile: configure: error: "sorry...architecture not supported"
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
1-config.log
1-config.log (text/plain), 106.80 KB, created by
Agostino Sarubbo
on 2024-03-09 07:12:13 UTC
(
hide
)
Description:
1-config.log
Filename:
MIME Type:
Creator:
Agostino Sarubbo
Created:
2024-03-09 07:12:13 UTC
Size:
106.80 KB
patch
obsolete
>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.72. Invocation command line was > > $ ./configure --prefix=/usr --build=armv7a-unknown-linux-gnueabihf --host=armv7a-unknown-linux-gnueabihf --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --datarootdir=/usr/share --disable-dependency-tracking --disable-silent-rules --disable-static --docdir=/usr/share/doc/systemc-2.3.4-r2 --htmldir=/usr/share/doc/systemc-2.3.4-r2/html --with-sysroot=/ --libdir=/usr/lib CXX=armv7a-unknown-linux-gnueabihf-g++ --enable-debug --disable-static --with-unix-layout > >## --------- ## >## Platform. ## >## --------- ## > >hostname = localhost >uname -m = armv8l >uname -r = 6.1.0-17-arm64 >uname -s = Linux >uname -v = #1 SMP Debian 6.1.69-1 (2023-12-30) > >/usr/bin/uname -p = ARMv8 Processor rev 1 (v8l) >/bin/uname -X = unknown > >/bin/arch = unknown >/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/lib/portage/python3.12/ebuild-helpers/xattr/ >PATH: /usr/lib/portage/python3.12/ebuild-helpers/ >PATH: /usr/local/sbin/ >PATH: /usr/local/bin/ >PATH: /usr/sbin/ >PATH: /usr/bin/ >PATH: /sbin/ >PATH: /bin/ >PATH: /opt/bin/ > > >## ----------- ## >## Core tests. ## >## ----------- ## > >configure:2808: looking for aux files: ltmain.sh ar-lib compile missing install-sh config.guess config.sub >configure:2821: trying ./config/ >configure:2850: ./config/ltmain.sh found >configure:2850: ./config/ar-lib found >configure:2850: ./config/compile found >configure:2850: ./config/missing found >configure:2832: ./config/install-sh found >configure:2850: ./config/config.guess found >configure:2850: ./config/config.sub found >configure:2976: checking build system type >configure:2992: result: armv7a-unknown-linux-gnueabihf >configure:3012: checking host system type >configure:3027: result: armv7a-unknown-linux-gnueabihf >configure:3047: checking target system type >configure:3062: result: armv7a-unknown-linux-gnueabihf >configure:3106: checking for a BSD-compatible install >configure:3180: result: /usr/lib/portage/python3.12/ebuild-helpers/xattr/install -c >configure:3191: checking whether build environment is sane >configure:3246: result: yes >configure:3411: checking for a race-free mkdir -p >configure:3454: result: /bin/mkdir -p >configure:3461: checking for gawk >configure:3482: found /usr/bin/gawk >configure:3494: result: gawk >configure:3505: checking whether make sets $(MAKE) >configure:3529: result: yes >configure:3559: checking whether make supports nested variables >configure:3578: result: yes >configure:3648: checking how to create a pax tar archive >configure:3659: tar --version >tar (GNU tar) 1.35 >Copyright (C) 2023 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:3662: $? = 0 >configure:3702: tardir=conftest.dir && eval tar --format=posix -chf - "$tardir" >conftest.tar >configure:3705: $? = 0 >configure:3709: tar -xf - <conftest.tar >configure:3712: $? = 0 >configure:3714: cat conftest.dir/file >GrepMe >configure:3717: $? = 0 >configure:3732: result: gnutar >configure:3794: checking whether make supports nested variables >configure:3813: result: yes >configure:3959: checking for C++ compiler version >configure:3968: armv7a-unknown-linux-gnueabihf-g++ --version >&5 >armv7a-unknown-linux-gnueabihf-g++ (Gentoo 13.2.1_p20240210 p13) 13.2.1 20240210 >Copyright (C) 2023 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:3979: $? = 0 >configure:3968: armv7a-unknown-linux-gnueabihf-g++ -v >&5 >Using built-in specs. >COLLECT_GCC=armv7a-unknown-linux-gnueabihf-g++ >COLLECT_LTO_WRAPPER=/usr/libexec/gcc/armv7a-unknown-linux-gnueabihf/13/lto-wrapper >Target: armv7a-unknown-linux-gnueabihf >Configured with: /var/tmp/portage/sys-devel/gcc-13.2.1_p20240210/work/gcc-13-20240210/configure --host=armv7a-unknown-linux-gnueabihf --build=armv7a-unknown-linux-gnueabihf --prefix=/usr --bindir=/usr/armv7a-unknown-linux-gnueabihf/gcc-bin/13 --includedir=/usr/lib/gcc/armv7a-unknown-linux-gnueabihf/13/include --datadir=/usr/share/gcc-data/armv7a-unknown-linux-gnueabihf/13 --mandir=/usr/share/gcc-data/armv7a-unknown-linux-gnueabihf/13/man --infodir=/usr/share/gcc-data/armv7a-unknown-linux-gnueabihf/13/info --with-gxx-include-dir=/usr/lib/gcc/armv7a-unknown-linux-gnueabihf/13/include/g++-v13 --disable-silent-rules --disable-dependency-tracking --with-python-dir=/share/gcc-data/armv7a-unknown-linux-gnueabihf/13/python --enable-languages=c,c++,fortran --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext --disable-libunwind-exceptions --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 13.2.1_p20240210 p13' --with-gcc-major-version-only --enable-libstdcxx-time --enable-lto --disable-libstdcxx-pch --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --disable-multilib --disable-fixed-point --with-float=hard --with-arch=armv7-a --with-float=hard --with-fpu=vfpv3-d16 --enable-libgomp --disable-libssp --disable-libada --disable-cet --disable-systemtap --disable-valgrind-annotations --disable-vtable-verify --disable-libvtv --without-zstd --with-isl --disable-isl-version-check --enable-default-pie --enable-default-ssp --with-build-config=bootstrap-lto >Thread model: posix >Supported LTO compression algorithms: zlib >gcc version 13.2.1 20240210 (Gentoo 13.2.1_p20240210 p13) >configure:3979: $? = 0 >configure:3968: armv7a-unknown-linux-gnueabihf-g++ -V >&5 >armv7a-unknown-linux-gnueabihf-g++: error: unrecognized command-line option '-V' >armv7a-unknown-linux-gnueabihf-g++: fatal error: no input files >compilation terminated. >configure:3979: $? = 1 >configure:3968: armv7a-unknown-linux-gnueabihf-g++ -qversion >&5 >armv7a-unknown-linux-gnueabihf-g++: error: unrecognized command-line option '-qversion'; did you mean '--version'? >armv7a-unknown-linux-gnueabihf-g++: fatal error: no input files >compilation terminated. >configure:3979: $? = 1 >configure:3999: checking whether the C++ compiler works >configure:4021: armv7a-unknown-linux-gnueabihf-g++ -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 conftest.cpp >&5 >configure:4025: $? = 0 >configure:4076: result: yes >configure:4080: checking for C++ compiler default output file name >configure:4082: result: a.out >configure:4088: checking for suffix of executables >configure:4095: armv7a-unknown-linux-gnueabihf-g++ -o conftest -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 conftest.cpp >&5 >configure:4099: $? = 0 >configure:4123: result: >configure:4147: checking whether we are cross compiling >configure:4155: armv7a-unknown-linux-gnueabihf-g++ -o conftest -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 conftest.cpp >&5 >configure:4159: $? = 0 >configure:4166: ./conftest >configure:4170: $? = 0 >configure:4185: result: no >configure:4191: checking for suffix of object files >configure:4214: armv7a-unknown-linux-gnueabihf-g++ -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.cpp >&5 >configure:4218: $? = 0 >configure:4242: result: o >configure:4246: checking whether the compiler supports GNU C++ >configure:4266: armv7a-unknown-linux-gnueabihf-g++ -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.cpp >&5 >configure:4266: $? = 0 >configure:4278: result: yes >configure:4289: checking whether armv7a-unknown-linux-gnueabihf-g++ accepts -g >configure:4310: armv7a-unknown-linux-gnueabihf-g++ -c -g conftest.cpp >&5 >configure:4310: $? = 0 >configure:4357: result: yes >configure:4377: checking for armv7a-unknown-linux-gnueabihf-g++ option to enable C++11 features >configure:4392: armv7a-unknown-linux-gnueabihf-g++ -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 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:4392: $? = 0 >configure:4411: result: none needed >configure:4491: checking for style of include used by make >configure:4519: result: GNU >configure:4546: checking dependency style of armv7a-unknown-linux-gnueabihf-g++ >configure:4659: result: none >configure:4678: checking whether we are using a Clang/LLVM C++ compiler >configure:4705: armv7a-unknown-linux-gnueabihf-g++ -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 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:4705: $? = 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:4721: result: no >configure:4742: checking for armv7a-unknown-linux-gnueabihf-gcc >configure:4775: result: armv7a-unknown-linux-gnueabihf-g++ >configure:5180: checking for C compiler version >configure:5189: armv7a-unknown-linux-gnueabihf-g++ --version >&5 >armv7a-unknown-linux-gnueabihf-g++ (Gentoo 13.2.1_p20240210 p13) 13.2.1 20240210 >Copyright (C) 2023 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:5200: $? = 0 >configure:5189: armv7a-unknown-linux-gnueabihf-g++ -v >&5 >Using built-in specs. >COLLECT_GCC=armv7a-unknown-linux-gnueabihf-g++ >COLLECT_LTO_WRAPPER=/usr/libexec/gcc/armv7a-unknown-linux-gnueabihf/13/lto-wrapper >Target: armv7a-unknown-linux-gnueabihf >Configured with: /var/tmp/portage/sys-devel/gcc-13.2.1_p20240210/work/gcc-13-20240210/configure --host=armv7a-unknown-linux-gnueabihf --build=armv7a-unknown-linux-gnueabihf --prefix=/usr --bindir=/usr/armv7a-unknown-linux-gnueabihf/gcc-bin/13 --includedir=/usr/lib/gcc/armv7a-unknown-linux-gnueabihf/13/include --datadir=/usr/share/gcc-data/armv7a-unknown-linux-gnueabihf/13 --mandir=/usr/share/gcc-data/armv7a-unknown-linux-gnueabihf/13/man --infodir=/usr/share/gcc-data/armv7a-unknown-linux-gnueabihf/13/info --with-gxx-include-dir=/usr/lib/gcc/armv7a-unknown-linux-gnueabihf/13/include/g++-v13 --disable-silent-rules --disable-dependency-tracking --with-python-dir=/share/gcc-data/armv7a-unknown-linux-gnueabihf/13/python --enable-languages=c,c++,fortran --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext --disable-libunwind-exceptions --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 13.2.1_p20240210 p13' --with-gcc-major-version-only --enable-libstdcxx-time --enable-lto --disable-libstdcxx-pch --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --disable-multilib --disable-fixed-point --with-float=hard --with-arch=armv7-a --with-float=hard --with-fpu=vfpv3-d16 --enable-libgomp --disable-libssp --disable-libada --disable-cet --disable-systemtap --disable-valgrind-annotations --disable-vtable-verify --disable-libvtv --without-zstd --with-isl --disable-isl-version-check --enable-default-pie --enable-default-ssp --with-build-config=bootstrap-lto >Thread model: posix >Supported LTO compression algorithms: zlib >gcc version 13.2.1 20240210 (Gentoo 13.2.1_p20240210 p13) >configure:5200: $? = 0 >configure:5189: armv7a-unknown-linux-gnueabihf-g++ -V >&5 >armv7a-unknown-linux-gnueabihf-g++: error: unrecognized command-line option '-V' >armv7a-unknown-linux-gnueabihf-g++: fatal error: no input files >compilation terminated. >configure:5200: $? = 1 >configure:5189: armv7a-unknown-linux-gnueabihf-g++ -qversion >&5 >armv7a-unknown-linux-gnueabihf-g++: error: unrecognized command-line option '-qversion'; did you mean '--version'? >armv7a-unknown-linux-gnueabihf-g++: fatal error: no input files >compilation terminated. >configure:5200: $? = 1 >configure:5189: armv7a-unknown-linux-gnueabihf-g++ -version >&5 >armv7a-unknown-linux-gnueabihf-g++: error: unrecognized command-line option '-version' >armv7a-unknown-linux-gnueabihf-g++: fatal error: no input files >compilation terminated. >configure:5200: $? = 1 >configure:5204: checking whether the compiler supports GNU C >configure:5224: armv7a-unknown-linux-gnueabihf-g++ -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 >configure:5224: $? = 0 >configure:5236: result: yes >configure:5247: checking whether armv7a-unknown-linux-gnueabihf-g++ accepts -g >configure:5268: armv7a-unknown-linux-gnueabihf-g++ -c -g conftest.c >&5 >configure:5268: $? = 0 >configure:5315: result: yes >configure:5335: checking for armv7a-unknown-linux-gnueabihf-g++ option to enable C11 features >configure:5350: armv7a-unknown-linux-gnueabihf-g++ -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 >conftest.c:74:3: error: #error "Compiler does not advertise C99 conformance" > 74 | # error "Compiler does not advertise C99 conformance" > | ^~~~~ >conftest.c:180:3: error: #error "Compiler does not advertise C11 conformance" > 180 | # error "Compiler does not advertise C11 conformance" > | ^~~~~ >conftest.c:132:29: error: expected ',' or '...' before 'text' > 132 | test_restrict (ccp restrict text) > | ^~~~ >conftest.c: In function 'int test_restrict(ccp)': >conftest.c:136:30: error: 'text' was not declared in this scope; did you mean 'test'? > 136 | for (unsigned int i = 0; *(text+i) != '\0'; ++i) > | ^~~~ > | test >conftest.c: At global scope: >conftest.c:184:24: error: expected initializer before 'aligned_as_double' > 184 | char _Alignas (double) aligned_as_double; > | ^~~~~~~~~~~~~~~~~ >conftest.c:185:19: error: expected ',' or ';' before 'no_special_alignment' > 185 | char _Alignas (0) no_special_alignment; > | ^~~~~~~~~~~~~~~~~~~~ >conftest.c:187:6: error: redefinition of 'char _Alignas' > 187 | char _Alignas (0) _Alignas (int) aligned_as_int; > | ^~~~~~~~ >conftest.c:185:6: note: 'char _Alignas' previously defined here > 185 | char _Alignas (0) no_special_alignment; > | ^~~~~~~~ >conftest.c:192:29: error: expected primary-expression before 'int' > 192 | int_alignment = _Alignof (int), > | ^~~ >conftest.c:192:19: error: '_Alignof' was not declared in this scope; did you mean '_Alignas'? > 192 | int_alignment = _Alignof (int), > | ^~~~~~~~ > | _Alignas >conftest.c:193:35: error: expected primary-expression before 'int' > 193 | int_array_alignment = _Alignof (int[100]), > | ^~~ >conftest.c:193:25: error: '_Alignof' was not declared in this scope; did you mean '_Alignas'? > 193 | int_array_alignment = _Alignof (int[100]), > | ^~~~~~~~ > | _Alignas >conftest.c:194:30: error: expected primary-expression before 'char' > 194 | char_alignment = _Alignof (char) > | ^~~~ >conftest.c:194:20: error: '_Alignof' was not declared in this scope; did you mean '_Alignas'? > 194 | char_alignment = _Alignof (char) > | ^~~~~~~~ > | _Alignas >conftest.c:196:16: error: expected constructor, destructor, or type conversion before '(' token > 196 | _Static_assert (0 < -_Alignof (int), "_Alignof is signed"); > | ^ >conftest.c:199:15: error: expected initializer before 'does_not_return' > 199 | int _Noreturn does_not_return (void) { for (;;) continue; } > | ^~~~~~~~~~~~~~~ >conftest.c:205:19: error: expected identifier before 'sizeof' > 205 | _Static_assert (sizeof (int) <= sizeof (long int), > | ^~~~~~ >conftest.c:205:19: error: expected ',' or '...' before 'sizeof' >conftest.c:205:3: error: ISO C++ forbids declaration of '_Static_assert' with no type [-fpermissive] > 205 | _Static_assert (sizeof (int) <= sizeof (long int), > | ^~~~~~~~~~~~~~ >conftest.c: In function 'int main(int, char**)': >conftest.c:245:18: error: expected initializer before 'newvar' > 245 | char *restrict newvar = "Another string"; > | ^~~~~~ >conftest.c:253:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive] > 253 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); > | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | | > | void* >conftest.c:274:58: error: 'newvar' was not declared in this scope > 274 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' > | ^~~~~~ >conftest.c:278:3: error: '_Static_assert' was not declared in this scope; did you mean 'static_assert'? > 278 | _Static_assert ((offsetof (struct anonymous, i) > | ^~~~~~~~~~~~~~ > | static_assert >configure:5350: $? = 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 (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; >| } >| >| /* C89 style stringification. */ >| #define noexpand_stringify(a) #a >| const char *stringified = noexpand_stringify(arbitrary+token=sequence); >| >| /* C89 style token pasting. Exercises some of the corner cases that >| e.g. old MSVC gets wrong, but not very hard. */ >| #define noexpand_concat(a,b) a##b >| #define expand_concat(a,b) noexpand_concat(a,b) >| extern int vA; >| extern int vbee; >| #define aye A >| #define bee B >| int *pvA = &expand_concat(v,aye); >| int *pvbee = &noexpand_concat(v,bee); >| >| /* 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 >| >| // See if C++-style comments work. >| >| #include <stdbool.h> >| extern int puts (const char *); >| extern int printf (const char *, ...); >| extern int dprintf (int, const char *, ...); >| extern void *malloc (size_t); >| extern void free (void *); >| >| // 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) >| { >| // 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; >| // Work around memory leak warnings. >| free (ia); >| >| // 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:5350: armv7a-unknown-linux-gnueabihf-g++ -std=gnu11 -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 >cc1plus: warning: command-line option '-std=gnu11' is valid for C/ObjC but not for C++ >conftest.c:74:3: error: #error "Compiler does not advertise C99 conformance" > 74 | # error "Compiler does not advertise C99 conformance" > | ^~~~~ >conftest.c:180:3: error: #error "Compiler does not advertise C11 conformance" > 180 | # error "Compiler does not advertise C11 conformance" > | ^~~~~ >conftest.c:132:29: error: expected ',' or '...' before 'text' > 132 | test_restrict (ccp restrict text) > | ^~~~ >conftest.c: In function 'int test_restrict(ccp)': >conftest.c:136:30: error: 'text' was not declared in this scope; did you mean 'test'? > 136 | for (unsigned int i = 0; *(text+i) != '\0'; ++i) > | ^~~~ > | test >conftest.c: At global scope: >conftest.c:184:24: error: expected initializer before 'aligned_as_double' > 184 | char _Alignas (double) aligned_as_double; > | ^~~~~~~~~~~~~~~~~ >conftest.c:185:19: error: expected ',' or ';' before 'no_special_alignment' > 185 | char _Alignas (0) no_special_alignment; > | ^~~~~~~~~~~~~~~~~~~~ >conftest.c:187:6: error: redefinition of 'char _Alignas' > 187 | char _Alignas (0) _Alignas (int) aligned_as_int; > | ^~~~~~~~ >conftest.c:185:6: note: 'char _Alignas' previously defined here > 185 | char _Alignas (0) no_special_alignment; > | ^~~~~~~~ >conftest.c:192:29: error: expected primary-expression before 'int' > 192 | int_alignment = _Alignof (int), > | ^~~ >conftest.c:192:19: error: '_Alignof' was not declared in this scope; did you mean '_Alignas'? > 192 | int_alignment = _Alignof (int), > | ^~~~~~~~ > | _Alignas >conftest.c:193:35: error: expected primary-expression before 'int' > 193 | int_array_alignment = _Alignof (int[100]), > | ^~~ >conftest.c:193:25: error: '_Alignof' was not declared in this scope; did you mean '_Alignas'? > 193 | int_array_alignment = _Alignof (int[100]), > | ^~~~~~~~ > | _Alignas >conftest.c:194:30: error: expected primary-expression before 'char' > 194 | char_alignment = _Alignof (char) > | ^~~~ >conftest.c:194:20: error: '_Alignof' was not declared in this scope; did you mean '_Alignas'? > 194 | char_alignment = _Alignof (char) > | ^~~~~~~~ > | _Alignas >conftest.c:196:16: error: expected constructor, destructor, or type conversion before '(' token > 196 | _Static_assert (0 < -_Alignof (int), "_Alignof is signed"); > | ^ >conftest.c:199:15: error: expected initializer before 'does_not_return' > 199 | int _Noreturn does_not_return (void) { for (;;) continue; } > | ^~~~~~~~~~~~~~~ >conftest.c:205:19: error: expected identifier before 'sizeof' > 205 | _Static_assert (sizeof (int) <= sizeof (long int), > | ^~~~~~ >conftest.c:205:19: error: expected ',' or '...' before 'sizeof' >conftest.c:205:3: error: ISO C++ forbids declaration of '_Static_assert' with no type [-fpermissive] > 205 | _Static_assert (sizeof (int) <= sizeof (long int), > | ^~~~~~~~~~~~~~ >conftest.c: In function 'int main(int, char**)': >conftest.c:245:18: error: expected initializer before 'newvar' > 245 | char *restrict newvar = "Another string"; > | ^~~~~~ >conftest.c:253:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive] > 253 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); > | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | | > | void* >conftest.c:274:58: error: 'newvar' was not declared in this scope > 274 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' > | ^~~~~~ >conftest.c:278:3: error: '_Static_assert' was not declared in this scope; did you mean 'static_assert'? > 278 | _Static_assert ((offsetof (struct anonymous, i) > | ^~~~~~~~~~~~~~ > | static_assert >configure:5350: $? = 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 (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; >| } >| >| /* C89 style stringification. */ >| #define noexpand_stringify(a) #a >| const char *stringified = noexpand_stringify(arbitrary+token=sequence); >| >| /* C89 style token pasting. Exercises some of the corner cases that >| e.g. old MSVC gets wrong, but not very hard. */ >| #define noexpand_concat(a,b) a##b >| #define expand_concat(a,b) noexpand_concat(a,b) >| extern int vA; >| extern int vbee; >| #define aye A >| #define bee B >| int *pvA = &expand_concat(v,aye); >| int *pvbee = &noexpand_concat(v,bee); >| >| /* 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 >| >| // See if C++-style comments work. >| >| #include <stdbool.h> >| extern int puts (const char *); >| extern int printf (const char *, ...); >| extern int dprintf (int, const char *, ...); >| extern void *malloc (size_t); >| extern void free (void *); >| >| // 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) >| { >| // 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; >| // Work around memory leak warnings. >| free (ia); >| >| // 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:5364: result: unsupported >configure:5384: checking for armv7a-unknown-linux-gnueabihf-g++ option to enable C99 features >configure:5399: armv7a-unknown-linux-gnueabihf-g++ -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 >conftest.c:74:3: error: #error "Compiler does not advertise C99 conformance" > 74 | # error "Compiler does not advertise C99 conformance" > | ^~~~~ >conftest.c:132:29: error: expected ',' or '...' before 'text' > 132 | test_restrict (ccp restrict text) > | ^~~~ >conftest.c: In function 'int test_restrict(ccp)': >conftest.c:136:30: error: 'text' was not declared in this scope; did you mean 'test'? > 136 | for (unsigned int i = 0; *(text+i) != '\0'; ++i) > | ^~~~ > | test >conftest.c: In function 'int main(int, char**)': >conftest.c:193:18: error: expected initializer before 'newvar' > 193 | char *restrict newvar = "Another string"; > | ^~~~~~ >conftest.c:201:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive] > 201 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); > | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | | > | void* >conftest.c:222:58: error: 'newvar' was not declared in this scope > 222 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' > | ^~~~~~ >configure:5399: $? = 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 (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; >| } >| >| /* C89 style stringification. */ >| #define noexpand_stringify(a) #a >| const char *stringified = noexpand_stringify(arbitrary+token=sequence); >| >| /* C89 style token pasting. Exercises some of the corner cases that >| e.g. old MSVC gets wrong, but not very hard. */ >| #define noexpand_concat(a,b) a##b >| #define expand_concat(a,b) noexpand_concat(a,b) >| extern int vA; >| extern int vbee; >| #define aye A >| #define bee B >| int *pvA = &expand_concat(v,aye); >| int *pvbee = &noexpand_concat(v,bee); >| >| /* 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 >| >| // See if C++-style comments work. >| >| #include <stdbool.h> >| extern int puts (const char *); >| extern int printf (const char *, ...); >| extern int dprintf (int, const char *, ...); >| extern void *malloc (size_t); >| extern void free (void *); >| >| // 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) >| { >| // 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; >| // Work around memory leak warnings. >| free (ia); >| >| // 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:5399: armv7a-unknown-linux-gnueabihf-g++ -std=gnu99 -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 >cc1plus: warning: command-line option '-std=gnu99' is valid for C/ObjC but not for C++ >conftest.c:74:3: error: #error "Compiler does not advertise C99 conformance" > 74 | # error "Compiler does not advertise C99 conformance" > | ^~~~~ >conftest.c:132:29: error: expected ',' or '...' before 'text' > 132 | test_restrict (ccp restrict text) > | ^~~~ >conftest.c: In function 'int test_restrict(ccp)': >conftest.c:136:30: error: 'text' was not declared in this scope; did you mean 'test'? > 136 | for (unsigned int i = 0; *(text+i) != '\0'; ++i) > | ^~~~ > | test >conftest.c: In function 'int main(int, char**)': >conftest.c:193:18: error: expected initializer before 'newvar' > 193 | char *restrict newvar = "Another string"; > | ^~~~~~ >conftest.c:201:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive] > 201 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); > | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | | > | void* >conftest.c:222:58: error: 'newvar' was not declared in this scope > 222 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' > | ^~~~~~ >configure:5399: $? = 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 (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; >| } >| >| /* C89 style stringification. */ >| #define noexpand_stringify(a) #a >| const char *stringified = noexpand_stringify(arbitrary+token=sequence); >| >| /* C89 style token pasting. Exercises some of the corner cases that >| e.g. old MSVC gets wrong, but not very hard. */ >| #define noexpand_concat(a,b) a##b >| #define expand_concat(a,b) noexpand_concat(a,b) >| extern int vA; >| extern int vbee; >| #define aye A >| #define bee B >| int *pvA = &expand_concat(v,aye); >| int *pvbee = &noexpand_concat(v,bee); >| >| /* 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 >| >| // See if C++-style comments work. >| >| #include <stdbool.h> >| extern int puts (const char *); >| extern int printf (const char *, ...); >| extern int dprintf (int, const char *, ...); >| extern void *malloc (size_t); >| extern void free (void *); >| >| // 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) >| { >| // 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; >| // Work around memory leak warnings. >| free (ia); >| >| // 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:5399: armv7a-unknown-linux-gnueabihf-g++ -std=c99 -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 >cc1plus: warning: command-line option '-std=c99' is valid for C/ObjC but not for C++ >conftest.c:74:3: error: #error "Compiler does not advertise C99 conformance" > 74 | # error "Compiler does not advertise C99 conformance" > | ^~~~~ >conftest.c:132:29: error: expected ',' or '...' before 'text' > 132 | test_restrict (ccp restrict text) > | ^~~~ >conftest.c: In function 'int test_restrict(ccp)': >conftest.c:136:30: error: 'text' was not declared in this scope; did you mean 'test'? > 136 | for (unsigned int i = 0; *(text+i) != '\0'; ++i) > | ^~~~ > | test >conftest.c: In function 'int main(int, char**)': >conftest.c:193:18: error: expected initializer before 'newvar' > 193 | char *restrict newvar = "Another string"; > | ^~~~~~ >conftest.c:201:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive] > 201 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); > | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | | > | void* >conftest.c:222:58: error: 'newvar' was not declared in this scope > 222 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' > | ^~~~~~ >configure:5399: $? = 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 (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; >| } >| >| /* C89 style stringification. */ >| #define noexpand_stringify(a) #a >| const char *stringified = noexpand_stringify(arbitrary+token=sequence); >| >| /* C89 style token pasting. Exercises some of the corner cases that >| e.g. old MSVC gets wrong, but not very hard. */ >| #define noexpand_concat(a,b) a##b >| #define expand_concat(a,b) noexpand_concat(a,b) >| extern int vA; >| extern int vbee; >| #define aye A >| #define bee B >| int *pvA = &expand_concat(v,aye); >| int *pvbee = &noexpand_concat(v,bee); >| >| /* 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 >| >| // See if C++-style comments work. >| >| #include <stdbool.h> >| extern int puts (const char *); >| extern int printf (const char *, ...); >| extern int dprintf (int, const char *, ...); >| extern void *malloc (size_t); >| extern void free (void *); >| >| // 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) >| { >| // 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; >| // Work around memory leak warnings. >| free (ia); >| >| // 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:5399: armv7a-unknown-linux-gnueabihf-g++ -c99 -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 >armv7a-unknown-linux-gnueabihf-g++: error: unrecognized command-line option '-c99' >configure:5399: $? = 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 (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; >| } >| >| /* C89 style stringification. */ >| #define noexpand_stringify(a) #a >| const char *stringified = noexpand_stringify(arbitrary+token=sequence); >| >| /* C89 style token pasting. Exercises some of the corner cases that >| e.g. old MSVC gets wrong, but not very hard. */ >| #define noexpand_concat(a,b) a##b >| #define expand_concat(a,b) noexpand_concat(a,b) >| extern int vA; >| extern int vbee; >| #define aye A >| #define bee B >| int *pvA = &expand_concat(v,aye); >| int *pvbee = &noexpand_concat(v,bee); >| >| /* 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 >| >| // See if C++-style comments work. >| >| #include <stdbool.h> >| extern int puts (const char *); >| extern int printf (const char *, ...); >| extern int dprintf (int, const char *, ...); >| extern void *malloc (size_t); >| extern void free (void *); >| >| // 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) >| { >| // 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; >| // Work around memory leak warnings. >| free (ia); >| >| // 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:5399: armv7a-unknown-linux-gnueabihf-g++ -qlanglvl=extc1x -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 >armv7a-unknown-linux-gnueabihf-g++: error: unrecognized command-line option '-qlanglvl=extc1x' >configure:5399: $? = 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 (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; >| } >| >| /* C89 style stringification. */ >| #define noexpand_stringify(a) #a >| const char *stringified = noexpand_stringify(arbitrary+token=sequence); >| >| /* C89 style token pasting. Exercises some of the corner cases that >| e.g. old MSVC gets wrong, but not very hard. */ >| #define noexpand_concat(a,b) a##b >| #define expand_concat(a,b) noexpand_concat(a,b) >| extern int vA; >| extern int vbee; >| #define aye A >| #define bee B >| int *pvA = &expand_concat(v,aye); >| int *pvbee = &noexpand_concat(v,bee); >| >| /* 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 >| >| // See if C++-style comments work. >| >| #include <stdbool.h> >| extern int puts (const char *); >| extern int printf (const char *, ...); >| extern int dprintf (int, const char *, ...); >| extern void *malloc (size_t); >| extern void free (void *); >| >| // 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) >| { >| // 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; >| // Work around memory leak warnings. >| free (ia); >| >| // 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:5399: armv7a-unknown-linux-gnueabihf-g++ -qlanglvl=extc99 -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 >armv7a-unknown-linux-gnueabihf-g++: error: unrecognized command-line option '-qlanglvl=extc99' >configure:5399: $? = 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 (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; >| } >| >| /* C89 style stringification. */ >| #define noexpand_stringify(a) #a >| const char *stringified = noexpand_stringify(arbitrary+token=sequence); >| >| /* C89 style token pasting. Exercises some of the corner cases that >| e.g. old MSVC gets wrong, but not very hard. */ >| #define noexpand_concat(a,b) a##b >| #define expand_concat(a,b) noexpand_concat(a,b) >| extern int vA; >| extern int vbee; >| #define aye A >| #define bee B >| int *pvA = &expand_concat(v,aye); >| int *pvbee = &noexpand_concat(v,bee); >| >| /* 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 >| >| // See if C++-style comments work. >| >| #include <stdbool.h> >| extern int puts (const char *); >| extern int printf (const char *, ...); >| extern int dprintf (int, const char *, ...); >| extern void *malloc (size_t); >| extern void free (void *); >| >| // 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) >| { >| // 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; >| // Work around memory leak warnings. >| free (ia); >| >| // 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:5399: armv7a-unknown-linux-gnueabihf-g++ -AC99 -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 ><command-line>: error: missing '(' after predicate >conftest.c:74:3: error: #error "Compiler does not advertise C99 conformance" > 74 | # error "Compiler does not advertise C99 conformance" > | ^~~~~ >conftest.c:132:29: error: expected ',' or '...' before 'text' > 132 | test_restrict (ccp restrict text) > | ^~~~ >conftest.c: In function 'int test_restrict(ccp)': >conftest.c:136:30: error: 'text' was not declared in this scope; did you mean 'test'? > 136 | for (unsigned int i = 0; *(text+i) != '\0'; ++i) > | ^~~~ > | test >conftest.c: In function 'int main(int, char**)': >conftest.c:193:18: error: expected initializer before 'newvar' > 193 | char *restrict newvar = "Another string"; > | ^~~~~~ >conftest.c:201:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive] > 201 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); > | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | | > | void* >conftest.c:222:58: error: 'newvar' was not declared in this scope > 222 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' > | ^~~~~~ >configure:5399: $? = 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 (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; >| } >| >| /* C89 style stringification. */ >| #define noexpand_stringify(a) #a >| const char *stringified = noexpand_stringify(arbitrary+token=sequence); >| >| /* C89 style token pasting. Exercises some of the corner cases that >| e.g. old MSVC gets wrong, but not very hard. */ >| #define noexpand_concat(a,b) a##b >| #define expand_concat(a,b) noexpand_concat(a,b) >| extern int vA; >| extern int vbee; >| #define aye A >| #define bee B >| int *pvA = &expand_concat(v,aye); >| int *pvbee = &noexpand_concat(v,bee); >| >| /* 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 >| >| // See if C++-style comments work. >| >| #include <stdbool.h> >| extern int puts (const char *); >| extern int printf (const char *, ...); >| extern int dprintf (int, const char *, ...); >| extern void *malloc (size_t); >| extern void free (void *); >| >| // 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) >| { >| // 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; >| // Work around memory leak warnings. >| free (ia); >| >| // 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:5399: armv7a-unknown-linux-gnueabihf-g++ -D_STDC_C99= -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 >conftest.c:74:3: error: #error "Compiler does not advertise C99 conformance" > 74 | # error "Compiler does not advertise C99 conformance" > | ^~~~~ >conftest.c:132:29: error: expected ',' or '...' before 'text' > 132 | test_restrict (ccp restrict text) > | ^~~~ >conftest.c: In function 'int test_restrict(ccp)': >conftest.c:136:30: error: 'text' was not declared in this scope; did you mean 'test'? > 136 | for (unsigned int i = 0; *(text+i) != '\0'; ++i) > | ^~~~ > | test >conftest.c: In function 'int main(int, char**)': >conftest.c:193:18: error: expected initializer before 'newvar' > 193 | char *restrict newvar = "Another string"; > | ^~~~~~ >conftest.c:201:12: error: invalid conversion from 'void*' to 'incomplete_array*' [-fpermissive] > 201 | malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); > | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | | > | void* >conftest.c:222:58: error: 'newvar' was not declared in this scope > 222 | ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' > | ^~~~~~ >configure:5399: $? = 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 (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; >| } >| >| /* C89 style stringification. */ >| #define noexpand_stringify(a) #a >| const char *stringified = noexpand_stringify(arbitrary+token=sequence); >| >| /* C89 style token pasting. Exercises some of the corner cases that >| e.g. old MSVC gets wrong, but not very hard. */ >| #define noexpand_concat(a,b) a##b >| #define expand_concat(a,b) noexpand_concat(a,b) >| extern int vA; >| extern int vbee; >| #define aye A >| #define bee B >| int *pvA = &expand_concat(v,aye); >| int *pvbee = &noexpand_concat(v,bee); >| >| /* 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 >| >| // See if C++-style comments work. >| >| #include <stdbool.h> >| extern int puts (const char *); >| extern int printf (const char *, ...); >| extern int dprintf (int, const char *, ...); >| extern void *malloc (size_t); >| extern void free (void *); >| >| // 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) >| { >| // 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; >| // Work around memory leak warnings. >| free (ia); >| >| // 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:5413: result: unsupported >configure:5433: checking for armv7a-unknown-linux-gnueabihf-g++ option to enable C89 features >configure:5448: armv7a-unknown-linux-gnueabihf-g++ -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 >configure:5448: $? = 0 >configure:5467: result: none needed >configure:5493: checking whether armv7a-unknown-linux-gnueabihf-g++ understands -c and -o together >configure:5516: armv7a-unknown-linux-gnueabihf-g++ -c conftest.c -o conftest2.o >configure:5519: $? = 0 >configure:5516: armv7a-unknown-linux-gnueabihf-g++ -c conftest.c -o conftest2.o >configure:5519: $? = 0 >configure:5532: result: yes >configure:5551: checking dependency style of armv7a-unknown-linux-gnueabihf-g++ >configure:5664: result: none >configure:5681: checking whether we are using a Clang/LLVM C compiler >configure:5708: armv7a-unknown-linux-gnueabihf-g++ -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 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:5708: $? = 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:5724: result: no >configure:5733: checking for armv7a-unknown-linux-gnueabihf-ar >configure:5754: found /usr/bin/armv7a-unknown-linux-gnueabihf-ar >configure:5766: result: armv7a-unknown-linux-gnueabihf-ar >configure:5842: checking the archiver (armv7a-unknown-linux-gnueabihf-ar) interface >configure:5859: armv7a-unknown-linux-gnueabihf-g++ -c -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0 conftest.c >&5 >configure:5859: $? = 0 >configure:5862: armv7a-unknown-linux-gnueabihf-ar cru libconftest.a conftest.o >&5 >configure:5865: $? = 0 >configure:5894: result: ar >configure:5926: checking dependency style of armv7a-unknown-linux-gnueabihf-g++ >configure:6037: result: none >configure:6053: checking whether ln -s works >configure:6057: result: yes >configure:6125: error: "sorry...architecture not supported" > >## ---------------- ## >## Cache variables. ## >## ---------------- ## > >ac_cv_build=armv7a-unknown-linux-gnueabihf >ac_cv_c_compiler_gnu=yes >ac_cv_c_undeclared_builtin_options='none needed' >ac_cv_cxx_compiler_gnu=yes >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=set >ac_cv_env_CFLAGS_value='-O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0' >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='-O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0' >ac_cv_env_CXX_set=set >ac_cv_env_CXX_value=armv7a-unknown-linux-gnueabihf-g++ >ac_cv_env_LDFLAGS_set=set >ac_cv_env_LDFLAGS_value='-Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0' >ac_cv_env_LIBS_set= >ac_cv_env_LIBS_value= >ac_cv_env_build_alias_set=set >ac_cv_env_build_alias_value=armv7a-unknown-linux-gnueabihf >ac_cv_env_host_alias_set=set >ac_cv_env_host_alias_value=armv7a-unknown-linux-gnueabihf >ac_cv_env_target_alias_set= >ac_cv_env_target_alias_value= >ac_cv_host=armv7a-unknown-linux-gnueabihf >ac_cv_objext=o >ac_cv_path_install='/usr/lib/portage/python3.12/ebuild-helpers/xattr/install -c' >ac_cv_path_mkdir=/bin/mkdir >ac_cv_prog_AR=armv7a-unknown-linux-gnueabihf-ar >ac_cv_prog_AWK=gawk >ac_cv_prog_CC=armv7a-unknown-linux-gnueabihf-g++ >ac_cv_prog_cc_c11=no >ac_cv_prog_cc_c89= >ac_cv_prog_cc_c99=no >ac_cv_prog_cc_g=yes >ac_cv_prog_cc_stdc= >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=armv7a-unknown-linux-gnueabihf >am_cv_CCAS_dependencies_compiler_type=none >am_cv_CC_dependencies_compiler_type=none >am_cv_CXX_dependencies_compiler_type=none >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 >gl_cv_compiler_check_decl_option=-Werror=implicit-function-declaration >gl_cv_func_getcwd_path_max=yes >sc_cv_clang=no >sc_cv_clangxx=no > >## ----------------- ## >## Output variables. ## >## ----------------- ## > >ACLOCAL='${SHELL} /var/tmp/portage/sci-electronics/systemc-2.3.4-r2/work/systemc-2.3.4_pub_rev_20190614/config/missing aclocal-1.14' >AMDEPBACKSLASH='' >AMDEP_FALSE='' >AMDEP_TRUE='#' >AMTAR='$${TAR-tar}' >AM_BACKSLASH='\' >AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' >AM_DEFAULT_VERBOSITY='1' >AM_V='$(V)' >AR='armv7a-unknown-linux-gnueabihf-ar' >AUTOCONF='${SHELL} /var/tmp/portage/sci-electronics/systemc-2.3.4-r2/work/systemc-2.3.4_pub_rev_20190614/config/missing autoconf' >AUTOHEADER='${SHELL} /var/tmp/portage/sci-electronics/systemc-2.3.4-r2/work/systemc-2.3.4_pub_rev_20190614/config/missing autoheader' >AUTOMAKE='${SHELL} /var/tmp/portage/sci-electronics/systemc-2.3.4-r2/work/systemc-2.3.4_pub_rev_20190614/config/missing automake-1.14' >AWK='gawk' >CC='armv7a-unknown-linux-gnueabihf-g++' >CCAS='armv7a-unknown-linux-gnueabihf-g++' >CCASDEPMODE='depmode=none' >CCASFLAGS='-O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0' >CCDEPMODE='depmode=none' >CFLAGS='-O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0' >CPPFLAGS='' >CXX='armv7a-unknown-linux-gnueabihf-g++' >CXXCPP='' >CXXDEPMODE='depmode=none' >CXXFLAGS='-O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0' >CYGPATH_W='echo' >DEBUG_CXXFLAGS='-g' >DEFS='' >DEPDIR='.deps' >DISABLE_ASYNC_UPDATES_FALSE='' >DISABLE_ASYNC_UPDATES_TRUE='' >DISABLE_VCD_SCOPES_FALSE='' >DISABLE_VCD_SCOPES_TRUE='' >DLLTOOL='' >DSYMUTIL='' >DUMPBIN='' >ECHO_C='' >ECHO_N='-n' >ECHO_T='' >EGREP='' >ENABLE_CALLBACKS_FALSE='' >ENABLE_CALLBACKS_TRACING_FALSE='' >ENABLE_CALLBACKS_TRACING_TRUE='' >ENABLE_CALLBACKS_TRUE='' >EXEEXT='' >EXPLICIT_LPTHREAD='-lpthread' >EXTRA_ASFLAGS='-xassembler-with-cpp' >EXTRA_CFLAGS='-xc' >EXTRA_CXXFLAGS='-Wall' >EXTRA_LDFLAGS='' >FGREP='' >GREP='' >INSTALL_DATA='${INSTALL} -m 644' >INSTALL_PROGRAM='${INSTALL}' >INSTALL_SCRIPT='${INSTALL}' >INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' >LD='' >LDFLAGS='-Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0' >LDFLAG_RPATH='-Wl,-rpath=' >LIBCONFIG_DEFINES='' >LIBOBJS='' >LIBS='' >LIBTOOL='' >LIB_ARCH_SUFFIX='' >LIPO='' >LN_S='ln -s' >LTLIBOBJS='' >MAKEINFO='${SHELL} /var/tmp/portage/sci-electronics/systemc-2.3.4-r2/work/systemc-2.3.4_pub_rev_20190614/config/missing makeinfo' >MANIFEST_TOOL='' >MKDIR_P='/bin/mkdir -p' >NM='' >NMEDIT='' >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='' >PTHREAD_CC='' >PTHREAD_CFLAGS='' >PTHREAD_LIBS='' >QT_ARCH='' >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='' >SED='' >SEPARATE_BUILD_TREE_FALSE='' >SEPARATE_BUILD_TREE_TRUE='' >SEPARATE_INSTALL_TREE_FALSE='' >SEPARATE_INSTALL_TREE_TRUE='' >SET_MAKE='' >SHELL='/bin/sh' >STRIP='' >TARGET_ARCH='linux' >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='' >ac_ct_CC='' >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='' >am__leading_dot='.' >am__nodep='' >am__quote='' >am__tar='tar --format=posix -chf - "$$tardir"' >am__untar='tar -xf -' >ax_pthread_config='' >bindir='${exec_prefix}/bin' >build='armv7a-unknown-linux-gnueabihf' >build_alias='armv7a-unknown-linux-gnueabihf' >build_cpu='armv7a' >build_os='linux-gnueabihf' >build_vendor='unknown' >datadir='/usr/share' >datarootdir='/usr/share' >docdir='/usr/share/doc/systemc-2.3.4-r2' >dvidir='${docdir}' >examplesdir='' >exec_prefix='NONE' >host='armv7a-unknown-linux-gnueabihf' >host_alias='armv7a-unknown-linux-gnueabihf' >host_cpu='armv7a' >host_os='linux-gnueabihf' >host_vendor='unknown' >htmldir='/usr/share/doc/systemc-2.3.4-r2/html' >includedir='${prefix}/include' >infodir='/usr/share/info' >install_sh='${SHELL} /var/tmp/portage/sci-electronics/systemc-2.3.4-r2/work/systemc-2.3.4_pub_rev_20190614/config/install-sh' >libarchdir='' >libdir='/usr/lib' >libexecdir='${exec_prefix}/libexec' >localedir='${datarootdir}/locale' >localstatedir='/var/lib' >mandir='/usr/share/man' >mkdir_p='$(MKDIR_P)' >oldincludedir='/usr/include' >pdfdir='${docdir}' >prefix='/usr' >program_transform_name='s,x,x,' >psdir='${docdir}' >rootdocdir='' >runstatedir='${localstatedir}/run' >sbindir='${exec_prefix}/sbin' >sharedstatedir='${prefix}/com' >sysconfdir='/etc' >target='armv7a-unknown-linux-gnueabihf' >target_alias='' >target_cpu='armv7a' >target_os='linux-gnueabihf' >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/" > >configure: exit 1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 926545
:
887120
| 887121