Check compiler for c99 declarations after code.
The sntrup761 reference code contains c99-style declarations after code so don't try to build that if the compiler doesn't support it.
This commit is contained in:
parent
7d878679a4
commit
464ba22f1e
10
configure.ac
10
configure.ac
|
@ -307,6 +307,16 @@ AC_COMPILE_IFELSE(
|
|||
[ AC_MSG_RESULT([no]) ]
|
||||
)
|
||||
|
||||
AC_MSG_CHECKING([if compiler accepts variable declarations after code])
|
||||
AC_COMPILE_IFELSE(
|
||||
[AC_LANG_PROGRAM([[#include <stdlib.h>]],
|
||||
[[ int a; a = 1; int b = 1; exit(a-b); ]])],
|
||||
[ AC_MSG_RESULT([yes])
|
||||
AC_DEFINE(VARIABLE_DECLARATION_AFTER_CODE, [1],
|
||||
[compiler variable declarations after code]) ],
|
||||
[ AC_MSG_RESULT([no]) ]
|
||||
)
|
||||
|
||||
if test "x$no_attrib_nonnull" != "x1" ; then
|
||||
AC_DEFINE([HAVE_ATTRIBUTE__NONNULL__], [1], [Have attribute nonnull])
|
||||
fi
|
||||
|
|
|
@ -901,10 +901,10 @@ struct winsize {
|
|||
#endif
|
||||
|
||||
/*
|
||||
* sntrup761 uses variable length arrays, only enable if the compiler
|
||||
* supports them.
|
||||
* sntrup761 uses variable length arrays and c99-style declarations after code,
|
||||
* so only enable if the compiler supports them.
|
||||
*/
|
||||
#ifdef VARIABLE_LENGTH_ARRAYS
|
||||
#if defined(VARIABLE_LENGTH_ARRAYS) && defined(VARIABLE_DECLARATION_AFTER_CODE)
|
||||
# define USE_SNTRUP761X25519 1
|
||||
#endif
|
||||
#endif /* _DEFINES_H */
|
||||
|
|
Loading…
Reference in New Issue