It is true that Clang does not support all gnu99 extensions [1], but not all of them are used in the codebase and over time there have been code cleanup efforts to improve Clang support.
For example after commit 779c57ea ("readelf: Pull advance_pc() in file scope") there are no more nested function declarations and elfutils now builds fine with Clang. So in the interest of enabling Clang builds we remove the only remaining blocker: the configure checks for nested functions and variable length arrays which are also unused. [1] https://sourceware.org/bugzilla/show_bug.cgi?id=24964 Signed-off-by: Adrian Ratiu <adrian.ra...@collabora.com> --- ChangeLog | 4 ++++ configure.ac | 11 ----------- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index 12b8f403..32f5b68d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2021-08-10 Adrian Ratiu <adrian.ra...@collabora.com> + + * configure.ac (AC_CACHE_CHECK): Drop unnecessary std=gnu99 checks + 2021-07-28 Mark Wielaard <m...@klomp.org> * configure.ac (AC_CHECK_DECLS): Add reallocarray check. diff --git a/configure.ac b/configure.ac index 7caff2c5..c14eb9f6 100644 --- a/configure.ac +++ b/configure.ac @@ -112,17 +112,6 @@ AC_COMPILE_IFELSE([AC_LANG_SOURCE([dnl int foo (int a) { for (int i = 0; i < a; ++i) if (i % 4) break; int s = a; return s; -} - -double bar (double a, double b) -{ - double square (double z) { return z * z; } - return square (a) + square (b); -} - -void baz (int n) -{ - struct S { int x[[n]]; }; }])], ac_cv_c99=yes, ac_cv_c99=no) CFLAGS="$old_CFLAGS"]) -- 2.32.0