On Fri, 17 Apr 2020, Joerg Sonnenberger wrote:
On Fri, Apr 17, 2020 at 03:22:35PM +0000, Kamil Rytarowski wrote:
Module Name: src
Committed By: kamil
Date: Fri Apr 17 15:22:35 UTC 2020
Modified Files:
src/include: assert.h
Log Message:
Remove the static_assert() fallback for pre-C11 and pre-C++11
C++ without real static_assert() can be incompatible with the C fallback
as presented in openjdk.
A pre-C11 compiler can be picky on the implementation.
So did you actually test that the tree compiles with this? Just asking,
since your own ptrace tests depend on static_assert...
Obviousliy this change was not tested...
dependall ===> tests/lib/libc/sys
# compile sys/t_ptrace_wait.o
/build/netbsd-local/tools/x86_64/amd64/bin/x86_64--netbsd-gcc -O2 -std=gnu99
-Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith
-Wno-sign-compare -Wsystem-headers -Wno-traditional -Wa,--fatal-warnings
-Wreturn-type -Wswitch -Wshadow -Wcast-qual -Wwrite-strings -Wextra
-Wno-unused-parameter -Wno-sign-compare -Wsign-compare -Wformat=2
-Wno-format-zero-length -Werror -Wno-missing-noreturn -fPIE -g
--sysroot=/build/netbsd-local/dest/amd64
-I/build/netbsd-local/src_ro/tests/lib/libc/sys/../../.. -c -D_KERNTYPES
-D__TEST_FENV -DENABLE_TESTS
/build/netbsd-local/src_ro/tests/lib/libc/sys/t_ptrace_wait.c
/build/netbsd-local/src_ro/tests/lib/libc/sys/t_ptrace_wait.c:77:15: error:
expected declaration specifiers or '...' before 'sizeof'
static_assert(sizeof(((struct ptrace_state *)0)->pe_report_event) ==
^~~~~~
/build/netbsd-local/src_ro/tests/lib/libc/sys/t_ptrace_wait.c:79:5: error:
expected declaration specifiers or '...' before string constant
"pe_report_event and si_pe_report_event must be of the same size");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/netbsd-local/src_ro/tests/lib/libc/sys/t_ptrace_wait.c:80:15: error:
expected declaration specifiers or '...' before 'sizeof'
static_assert(sizeof(((struct ptrace_state *)0)->pe_other_pid) ==
^~~~~~
/build/netbsd-local/src_ro/tests/lib/libc/sys/t_ptrace_wait.c:82:5: error:
expected declaration specifiers or '...' before string constant
"pe_other_pid and si_pe_other_pid must be of the same size");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/netbsd-local/src_ro/tests/lib/libc/sys/t_ptrace_wait.c:83:15: error:
expected declaration specifiers or '...' before 'sizeof'
static_assert(sizeof(((struct ptrace_state *)0)->pe_lwp) ==
^~~~~~
/build/netbsd-local/src_ro/tests/lib/libc/sys/t_ptrace_wait.c:85:5: error:
expected declaration specifiers or '...' before string constant
"pe_lwp and si_pe_lwp must be of the same size");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/netbsd-local/src_ro/tests/lib/libc/sys/t_ptrace_wait.c:86:15: error:
expected declaration specifiers or '...' before 'sizeof'
static_assert(sizeof(((struct ptrace_state *)0)->pe_other_pid) ==
^~~~~~
/build/netbsd-local/src_ro/tests/lib/libc/sys/t_ptrace_wait.c:88:5: error:
expected declaration specifiers or '...' before string constant
"pe_other_pid and pe_lwp must be of the same size");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*** [t_ptrace_wait.o] Error code 1
nbmake: stopped in /build/netbsd-local/src_ro
+--------------------+--------------------------+-----------------------+
| Paul Goyette | PGP Key fingerprint: | E-mail addresses: |
| (Retired) | FA29 0E3B 35AF E8AE 6651 | p...@whooppee.com |
| Software Developer | 0786 F758 55DE 53BA 7731 | pgoye...@netbsd.org |
+--------------------+--------------------------+-----------------------+