Project

General

Profile

Actions

Misc #18726

closed

CI Error on c99 and c2x

Added by znz (Kazuhiro NISHIYAMA) about 2 years ago. Updated about 1 year ago.


Description

https://github.com/ruby/ruby/runs/6013849896?check_suite_focus=true

checking char bit... 8
checking size of int... 0
checking size of short... 0
checking size of long... 0
configure: error: in `/__w/ruby/ruby/build':
configure: error: cannot compute sizeof (long long)
See `config.log' for more details
checking size of long long... 
Error: Process completed with exit code 77.

I investigate it, the cause is that autoconf is old in ghcr.io/ruby/ruby-ci-image:clang-15. (Autoconf 2.69)
Autoconf 2.71 generates with void.

How to reproduce:

  % docker run --rm -it ghcr.io/ruby/ruby-ci-image:clang-15
  $ sudo apt update
  $ sudo apt install git
  $ git clone --depth=1 https://github.com/ruby/ruby $HOME/src
  $ mkdir $HOME/build
  $ cd $HOME/build
  $ ../src/autogen.sh
  $ ../src/configure -C --enable-debug-env --disable-install-doc --with-ext=-test-/cxxanyargs,+ --without-valgrind --without-jemalloc --without-gmp --with-gcc="clang-15 -std=c99   -Werror=pedantic -pedantic-errors" --enable-shared optflags=-O1 debugflags=-ggdb3

Tail of configure output:

  checking char bit... 8
  checking size of int... 0
  checking size of short... 0
  checking size of long... 0
  checking size of long long... configure: error: in `/home/ci/build':
  configure: error: cannot compute sizeof (long long)
  See `config.log' for more details

Quote from config.log:

configure:13939: checking size of int
configure:13944: clang-15 -std=c99   -Werror=pedantic -pedantic-errors -o conftest  -O1 -fno-fast-math -ggdb3  -fdeclspec   -fstack-protector-strong conftest.c -lm  >&5
conftest.c:107:25: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
static long int longval () { return (long int) (sizeof (int)); }
			^
			 void
conftest.c:108:35: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
static unsigned long int ulongval () { return (long int) (sizeof (int)); }
				  ^
				   void
2 errors generated.
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0