From db42c87936a1111024c002dbc64cc9e2a4613a54 Mon Sep 17 00:00:00 2001 From: Fredrik Roubert Date: Thu, 21 Nov 2024 18:40:15 +0100 Subject: [PATCH] ICU-22954 A build test for C++ header-only APIs with C++ APIs disabled. --- icu4c/source/test/intltest/Makefile.in | 2 +- .../test/intltest/cplusplus_header_api_build_test.cpp | 11 +++++++++++ icu4c/source/test/intltest/intltest.vcxproj | 1 + icu4c/source/test/intltest/intltest.vcxproj.filters | 3 +++ 4 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 icu4c/source/test/intltest/cplusplus_header_api_build_test.cpp diff --git a/icu4c/source/test/intltest/Makefile.in b/icu4c/source/test/intltest/Makefile.in index b9a78e634e4..5d4a03bc678 100644 --- a/icu4c/source/test/intltest/Makefile.in +++ b/icu4c/source/test/intltest/Makefile.in @@ -75,7 +75,7 @@ numbertest_parse.o numbertest_doubleconversion.o numbertest_skeletons.o \ static_unisets_test.o numfmtdatadriventest.o numbertest_range.o erarulestest.o \ formattedvaluetest.o formatted_string_builder_test.o numbertest_permutation.o \ units_data_test.o units_router_test.o units_test.o displayoptions_test.o \ -numbertest_simple.o uchar_type_build_test.o ucolheaderonlytest.o usetheaderonlytest.o +numbertest_simple.o cplusplus_header_api_build_test.o uchar_type_build_test.o ucolheaderonlytest.o usetheaderonlytest.o DEPS = $(OBJECTS:.o=.d) diff --git a/icu4c/source/test/intltest/cplusplus_header_api_build_test.cpp b/icu4c/source/test/intltest/cplusplus_header_api_build_test.cpp new file mode 100644 index 00000000000..d3381999484 --- /dev/null +++ b/icu4c/source/test/intltest/cplusplus_header_api_build_test.cpp @@ -0,0 +1,11 @@ +// © 2025 and later: Unicode, Inc. and others. +// License & terms of use: http://www.unicode.org/copyright.html#License + +// ICU-22954 Test that client code can be built with U_SHOW_CPLUSPLUS_API=0. +#undef U_ALL_IMPLEMENTATION +#undef U_SHOW_CPLUSPLUS_API +#define U_SHOW_CPLUSPLUS_API 0 +#include "unicode/char16ptr.h" +#include "unicode/ucol.h" +#include "unicode/uset.h" +#include "unicode/utypes.h" diff --git a/icu4c/source/test/intltest/intltest.vcxproj b/icu4c/source/test/intltest/intltest.vcxproj index c561e95bc76..7c0b089a36e 100644 --- a/icu4c/source/test/intltest/intltest.vcxproj +++ b/icu4c/source/test/intltest/intltest.vcxproj @@ -241,6 +241,7 @@ + diff --git a/icu4c/source/test/intltest/intltest.vcxproj.filters b/icu4c/source/test/intltest/intltest.vcxproj.filters index 61acf3beb30..cea62b786d2 100644 --- a/icu4c/source/test/intltest/intltest.vcxproj.filters +++ b/icu4c/source/test/intltest/intltest.vcxproj.filters @@ -568,6 +568,9 @@ formatting + + configuration + configuration