GlobalArrays/ga

global/src/peigstubs.c:15:8: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]

Closed this issue · 1 comments

Intel 2022.2 compilers are enforcing C99, which breaks GA.

Solution

#if ENABLE_PEIGS
#   if ENABLE_F77
#       define gai_diag_       F77_FUNC_(gai_diag,GAI_DIAG)
#       define gai_diag_std_   F77_FUNC_(gai_diag_std,GAI_DIAG_STD)
#       define gai_diag_reuse_ F77_FUNC_(gai_diag_reuse,GAI_DIAG_REUSE)
extern void gai_diag_(Integer*,Integer*,Integer*,DoublePrecision*);
extern void gai_diag_std_(Integer*,Integer*,DoublePrecision*);
extern void gai_diag_reuse_(Integer*,Integer*,Integer*,Integer*,DoublePrecision*);
#   else
#   endif
#else
#endif

Problem

libtool: compile:  icx -DHAVE_CONFIG_H -I. -I../ga-5.8.2 -I/opt/intel/oneapi/mpi/2021.7.1/include -I/home/jhammond/NWChem/github/external-armci/include -Ima -I../ga-5.8.2/ma -I../ga-5.8.2/LinAlg/lapack+blas -Iglobal/src -I../ga-5.8.2/global/src -I../ga-5.8.2/global/testing -I../ga-5.8.2/pario/dra -I../ga-5.8.2/pario/eaf -I../ga-5.8.2/pario/elio -I../ga-5.8.2/pario/sf -Igaf2c -I../ga-5.8.2/gaf2c -I../ga-5.8.2/tcgmsg -I../ga-5.8.2/tcgmsg/tcgmsg-mpi -fno-tree-slp-vectorize -fPIC -MT global/src/peigstubs.lo -MD -MP -MF global/src/.deps/peigstubs.Tpo -c ../ga-5.8.2/global/src/peigstubs.c -o global/src/peigstubs.o
../ga-5.8.2/global/src/peigstubs.c:14:8: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]
extern gai_diag_(Integer*,Integer*,Integer*,DoublePrecision*);
~~~~~~ ^
int
../ga-5.8.2/global/src/peigstubs.c:11:32: note: expanded from macro 'gai_diag_'
#       define gai_diag_       F77_FUNC_(gai_diag,GAI_DIAG)
                               ^
./config.h:110:30: note: expanded from macro 'F77_FUNC_'
#define F77_FUNC_(name,NAME) name ## _
                             ^
<scratch space>:46:1: note: expanded from here
gai_diag_
^
../ga-5.8.2/global/src/peigstubs.c:15:8: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]
extern gai_diag_std_(Integer*,Integer*,DoublePrecision*);
~~~~~~ ^
int
../ga-5.8.2/global/src/peigstubs.c:12:32: note: expanded from macro 'gai_diag_std_'
#       define gai_diag_std_   F77_FUNC_(gai_diag_std,GAI_DIAG_STD)
#if HAVE_CONFIG_H
                               ^
./config.h:110:30: note: expanded from macro 'F77_FUNC_'
#define F77_FUNC_(name,NAME) name ## _
                             ^
<scratch space>:47:1: note: expanded from here
gai_diag_std_
^
../ga-5.8.2/global/src/peigstubs.c:16:8: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]
extern gai_diag_reuse_(Integer*,Integer*,Integer*,Integer*,DoublePrecision*);
~~~~~~ ^
int
../ga-5.8.2/global/src/peigstubs.c:13:32: note: expanded from macro 'gai_diag_reuse_'
#       define gai_diag_reuse_ F77_FUNC_(gai_diag_reuse,GAI_DIAG_REUSE)
                               ^
./config.h:110:30: note: expanded from macro 'F77_FUNC_'
#define F77_FUNC_(name,NAME) name ## _
                             ^
<scratch space>:48:1: note: expanded from here
gai_diag_reuse_
^
3 errors generated.
make[3]: *** [Makefile:6973: global/src/peigstubs.lo] Error 1
make[2]: *** [Makefile:7349: all-recursive] Error 1
make[1]: *** [Makefile:4071: all] Error 2
make: *** [GNUmakefile:708: build/.libs/libga.a] Error 1

Fixed by pull #280