From: Bruno Haible Date: Wed, 15 May 2024 23:23:39 +0000 (+0200) Subject: stdbit-h: Add tests. X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=1a016b72a9ea5d48c6eab35494282ec657db6e18;p=gnulib.git stdbit-h: Add tests. * tests/test-stdbit-h.c: New file. * tests/test-stdbit-h-c++.cc: New file. * modules/stdbit-h-tests: New file. * modules/stdbit-h-c++-tests: New file. --- diff --git a/ChangeLog b/ChangeLog index 9ce6d303c6..9a69d7e2aa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2024-05-15 Bruno Haible + + stdbit-h: Add tests. + * tests/test-stdbit-h.c: New file. + * tests/test-stdbit-h-c++.cc: New file. + * modules/stdbit-h-tests: New file. + * modules/stdbit-h-c++-tests: New file. + 2024-05-15 Bruno Haible stdbit-h: Make it work in C++ mode. diff --git a/modules/stdbit-h-c++-tests b/modules/stdbit-h-c++-tests new file mode 100644 index 0000000000..aad80e4f8d --- /dev/null +++ b/modules/stdbit-h-c++-tests @@ -0,0 +1,17 @@ +Files: +tests/test-stdbit-h-c++.cc + +Status: +c++-test + +Depends-on: +ansi-c++-opt + +configure.ac: + +Makefile.am: +if ANSICXX +TESTS += test-stdbit-h-c++ +check_PROGRAMS += test-stdbit-h-c++ +test_stdbit_h_c___SOURCES = test-stdbit-h-c++.cc +endif diff --git a/modules/stdbit-h-tests b/modules/stdbit-h-tests new file mode 100644 index 0000000000..67a8ff645c --- /dev/null +++ b/modules/stdbit-h-tests @@ -0,0 +1,12 @@ +Files: +tests/test-stdbit-h.c +tests/macros.h + +Depends-on: +stdbit-h-c++-tests + +configure.ac: + +Makefile.am: +TESTS += test-stdbit-h +check_PROGRAMS += test-stdbit-h diff --git a/tests/test-stdbit-h-c++.cc b/tests/test-stdbit-h-c++.cc new file mode 100644 index 0000000000..db19ea798d --- /dev/null +++ b/tests/test-stdbit-h-c++.cc @@ -0,0 +1,32 @@ +/* Test of substitute in C++ mode. + Copyright (C) 2024 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Bruno Haible , 2024. */ + +#define GNULIB_NAMESPACE gnulib +#include + +#include + +/* Check against conflicts between and the C++ header files. */ +#include +#include + + +int +main () +{ +} diff --git a/tests/test-stdbit-h.c b/tests/test-stdbit-h.c new file mode 100644 index 0000000000..f024e4ac6f --- /dev/null +++ b/tests/test-stdbit-h.c @@ -0,0 +1,40 @@ +/* Test of substitute. + Copyright (C) 2024 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Bruno Haible , 2024. */ + +#include + +#include + +/* Check that __STDC_ENDIAN_BIG__ and __STDC_ENDIAN_LITTLE__ are defined. */ +int a[2] = { __STDC_ENDIAN_BIG__, __STDC_ENDIAN_LITTLE__ }; + +/* Check that __STDC_ENDIAN_NATIVE__ is defined. */ +int b = __STDC_ENDIAN_NATIVE__; + +/* Check that __STDC_ENDIAN_NATIVE__ is either __STDC_ENDIAN_BIG__ or + __STDC_ENDIAN_LITTLE__. */ +#if !(__STDC_ENDIAN_NATIVE__ == __STDC_ENDIAN_BIG__ \ + || __STDC_ENDIAN_NATIVE__ == __STDC_ENDIAN_LITTLE__) +# error "unknown endianness" +#endif + +int +main (void) +{ + return 0; +}