bug-autoconf
[Top][All Lists]
Advanced

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

AC_TYPE_INT8/16/32/64_T fail


From: Daily, Jeff A
Subject: AC_TYPE_INT8/16/32/64_T fail
Date: Sat, 6 Feb 2010 14:22:02 -0800

The AC_TYPE_INT*_T macros worked for me with 2.64, but now they don't with 
2.65.  The AC_TYPE_UINT*_T macros still work.  I have verified that reverting 
back to 2.64 does work for me.  I don't have the output of make check to 
provide, but I do have the output from my config.log for my software which 
shows the results of running AC_TYPE_INT64_T.  I hope that is sufficient.  
Although I ran make check for autoconf, the "autoconf/c" macro tests don't 
appear to try any of the AC_TYPE_INT*_T macros.

I am using PGI compilers version 9.0-4.  I also tried copying the indicated 
test program into conftest.c and got:

/opt/cray/xt-asyncpe/3.3/bin/cc: INFO: linux target is being used
PGC-S-0035-Syntax error: Recovery attempted by replacing ';' by ')' 
(conftest.c: 5)
PGC-S-0037-Syntax error: Recovery attempted by deleting ')' (conftest.c: 6)
PGC/x86-64 Linux 9.0-4: compilation completed with severe errors

Here's  the relevant piece of config.log:

configure:18899: checking for int64_t
configure:18899: CC -c -g -DMPICH_IGNORE_CXX_SEEK -I/global/u1/j/jdaily/franklin
/parallel-netcdf-1.1.1/local/include conftest.cpp >&5
/opt/cray/xt-asyncpe/3.3/bin/CC: INFO: linux target is being used
"conftest.cpp", line 80: error: expected a ")"
  static int test_array [1 - 2 * !(enum { N = 64 / 2 - 1 };
                                                          ^
"conftest.cpp", line 80: error: expected an expression
  static int test_array [1 - 2 * !(enum { N = 64 / 2 - 1 };
                                                          ^
"conftest.cpp", line 80: error: expected a "]"
  static int test_array [1 - 2 * !(enum { N = 64 / 2 - 1 };
                                                          ^
"conftest.cpp", line 80: error: a variable length array cannot have static
          storage duration
  static int test_array [1 - 2 * !(enum { N = 64 / 2 - 1 };
             ^
"conftest.cpp", line 81: warning: expression has no effect
             0 < (int64_t) (((((int64_t) 1 << N) << N) - 1) * 2 + 1))];
             ^
"conftest.cpp", line 81: error: expected a ";"
             0 < (int64_t) (((((int64_t) 1 << N) << N) - 1) * 2 + 1))];
                                                                    ^
"conftest.cpp", line 80: warning: variable "test_array" was set but never used
  static int test_array [1 - 2 * !(enum { N = 64 / 2 - 1 };

*SNIP*

| int
| main ()
| {
| static int test_array [1 - 2 * !(enum { N = 64 / 2 - 1 };
|            0 < (int64_t) (((((int64_t) 1 << N) << N) - 1) * 2 + 1))];
| test_array [0] = 0
|
|   ;
|   return 0;
| }




reply via email to

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