From d02992e327377175ad6ef10f53f773336f15ed6a Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Sun, 12 Feb 2023 20:41:23 +0700 Subject: [PATCH 01/20] enable ubsan --- tests/std/tests/char8_t_17_matrix.lst | 4 ++-- tests/std/tests/char8_t_impure_matrix.lst | 4 ++-- tests/std/tests/char8_t_matrix.lst | 4 ++-- tests/std/tests/concepts_20_matrix.lst | 4 ++-- tests/std/tests/concepts_latest_matrix.lst | 4 ++-- tests/std/tests/impure_matrix.lst | 4 ++-- tests/std/tests/locale0_implib_cpp_matrix.lst | 4 ++-- tests/std/tests/strict_concepts_20_matrix.lst | 4 ++-- tests/std/tests/strict_concepts_latest_matrix.lst | 4 ++-- tests/std/tests/usual_17_matrix.lst | 4 ++-- tests/std/tests/usual_20_matrix.lst | 4 ++-- tests/std/tests/usual_latest_matrix.lst | 4 ++-- tests/std/tests/usual_matrix.lst | 4 ++-- tests/tr1/env.lst | 4 ++-- 14 files changed, 28 insertions(+), 28 deletions(-) diff --git a/tests/std/tests/char8_t_17_matrix.lst b/tests/std/tests/char8_t_17_matrix.lst index 95b7ee931f..59128013c6 100644 --- a/tests/std/tests/char8_t_17_matrix.lst +++ b/tests/std/tests/char8_t_17_matrix.lst @@ -33,5 +33,5 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/char8_t_impure_matrix.lst b/tests/std/tests/char8_t_impure_matrix.lst index 33d0825c94..6886008152 100644 --- a/tests/std/tests/char8_t_impure_matrix.lst +++ b/tests/std/tests/char8_t_impure_matrix.lst @@ -35,5 +35,5 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/char8_t_matrix.lst b/tests/std/tests/char8_t_matrix.lst index 5c9cb3a771..42ed35a803 100644 --- a/tests/std/tests/char8_t_matrix.lst +++ b/tests/std/tests/char8_t_matrix.lst @@ -34,5 +34,5 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive- /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17 /w14640 /Zc:threadSafeInit-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit- -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/concepts_20_matrix.lst b/tests/std/tests/concepts_20_matrix.lst index ec7d7229b9..3c60d21e57 100644 --- a/tests/std/tests/concepts_20_matrix.lst +++ b/tests/std/tests/concepts_20_matrix.lst @@ -25,5 +25,5 @@ PM_CL="/clr /MD /std:c++20 /d1clrcxxstd" PM_CL="/clr /MDd /std:c++20 /d1clrcxxstd" # PM_CL="/std:c++20 /permissive- /BE /c /EHsc /MD" # PM_CL="/std:c++latest /permissive- /BE /c /EHsc /MTd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /permissive- /MD" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MTd /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /permissive- /MDd" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/concepts_latest_matrix.lst b/tests/std/tests/concepts_latest_matrix.lst index 73625bbbb8..74d627f10e 100644 --- a/tests/std/tests/concepts_latest_matrix.lst +++ b/tests/std/tests/concepts_latest_matrix.lst @@ -20,5 +20,5 @@ PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /permissive" PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /permissive- /analyze:only /analyze:autolog-" # PM_CL="/permissive- /BE /c /MD" # PM_CL="/permissive- /BE /c /MTd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MD" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MTd /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MDd" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/impure_matrix.lst b/tests/std/tests/impure_matrix.lst index 3c745541a2..dd33791861 100644 --- a/tests/std/tests/impure_matrix.lst +++ b/tests/std/tests/impure_matrix.lst @@ -33,5 +33,5 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/locale0_implib_cpp_matrix.lst b/tests/std/tests/locale0_implib_cpp_matrix.lst index 72ce91b045..083d3b3c42 100644 --- a/tests/std/tests/locale0_implib_cpp_matrix.lst +++ b/tests/std/tests/locale0_implib_cpp_matrix.lst @@ -35,5 +35,5 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive- /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17 /w14640 /Zc:threadSafeInit-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit- -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/strict_concepts_20_matrix.lst b/tests/std/tests/strict_concepts_20_matrix.lst index 6649467930..2792011f7f 100644 --- a/tests/std/tests/strict_concepts_20_matrix.lst +++ b/tests/std/tests/strict_concepts_20_matrix.lst @@ -24,5 +24,5 @@ PM_CL="/clr /MD /std:c++20 /d1clrcxxstd" PM_CL="/clr /MDd /std:c++20 /d1clrcxxstd" # PM_CL="/std:c++20 /BE /c /EHsc /MD" # PM_CL="/std:c++latest /BE /c /EHsc /MTd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /MD" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /MTd /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /MDd" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/strict_concepts_latest_matrix.lst b/tests/std/tests/strict_concepts_latest_matrix.lst index 3b126ab4c1..85f1316cc0 100644 --- a/tests/std/tests/strict_concepts_latest_matrix.lst +++ b/tests/std/tests/strict_concepts_latest_matrix.lst @@ -22,5 +22,5 @@ PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2" PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /analyze:only /analyze:autolog-" # PM_CL="/BE /c /MD" # PM_CL="/BE /c /MTd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /MD" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /MTd /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /MDd" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/usual_17_matrix.lst b/tests/std/tests/usual_17_matrix.lst index 6828a04e29..b00c802ece 100644 --- a/tests/std/tests/usual_17_matrix.lst +++ b/tests/std/tests/usual_17_matrix.lst @@ -32,5 +32,5 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/usual_20_matrix.lst b/tests/std/tests/usual_20_matrix.lst index 7e03110069..4372705acd 100644 --- a/tests/std/tests/usual_20_matrix.lst +++ b/tests/std/tests/usual_20_matrix.lst @@ -22,5 +22,5 @@ PM_CL="/clr /MD /std:c++20 /d1clrcxxstd" PM_CL="/clr /MDd /std:c++20 /d1clrcxxstd" PM_CL="/BE /c /EHsc /MD /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /permissive- /MD" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MTd /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /permissive- /MDd" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/usual_latest_matrix.lst b/tests/std/tests/usual_latest_matrix.lst index 0f50c36029..01435ff04c 100644 --- a/tests/std/tests/usual_latest_matrix.lst +++ b/tests/std/tests/usual_latest_matrix.lst @@ -20,5 +20,5 @@ PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /permissive" PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /permissive- /analyze:only /analyze:autolog-" PM_CL="/BE /c /MD /permissive-" PM_CL="/BE /c /MTd /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MD" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MTd /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MDd" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/usual_matrix.lst b/tests/std/tests/usual_matrix.lst index 689b83d470..19606500fb 100644 --- a/tests/std/tests/usual_matrix.lst +++ b/tests/std/tests/usual_matrix.lst @@ -34,5 +34,5 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive- /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17 /w14640 /Zc:threadSafeInit-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit- -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/tr1/env.lst b/tests/tr1/env.lst index 164e32ef6d..7d979d2a8f 100644 --- a/tests/tr1/env.lst +++ b/tests/tr1/env.lst @@ -29,5 +29,5 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MD /std:c++14" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MDd /std:c++17" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MT /std:c++20 /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MTd /std:c++latest /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MTd /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MT /std:c++latest /permissive- -fsanitize=undefined -fno-sanitize-recover=undefined" From b2e3a6a4d9f631476540d73d960facec1fa20f43 Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Tue, 14 Feb 2023 05:24:02 +0700 Subject: [PATCH 02/20] fix `UB`s Co-authored-by: A. Jiang --- stl/inc/regex | 2 +- stl/inc/sstream | 10 ++++++---- tests/tr1/tests/cstddef/test.cpp | 2 +- tests/tr1/tests/type_traits5/test.cpp | 2 +- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/stl/inc/regex b/stl/inc/regex index 2b0e47f68e..8a5a208d51 100644 --- a/stl/inc/regex +++ b/stl/inc/regex @@ -58,7 +58,7 @@ _STL_DISABLE_CLANG_WARNINGS _STD_BEGIN -enum _Meta_type { // meta character representations for parser +enum _Meta_type : int { // meta character representations for parser _Meta_lpar = '(', _Meta_rpar = ')', _Meta_dlr = '$', diff --git a/stl/inc/sstream b/stl/inc/sstream index 365753b94e..d1b2d0ee75 100644 --- a/stl/inc/sstream +++ b/stl/inc/sstream @@ -269,7 +269,7 @@ protected: _Mysb::setp(_Newptr, _New_pnext, _Newptr + _Newsize); if (_Mystate & _Noread) { // maintain eback() == allocated pointer invariant - _Mysb::setg(_Newptr, nullptr, _Newptr); + _Mysb::setg(_Newptr, _Newptr, _Newptr); } else { // if readable, set the get area to initialized region _Mysb::setg(_Newptr, _Newptr + (_Mysb::gptr() - _Oldptr), _Seekhigh); } @@ -480,9 +480,11 @@ protected: void _Tidy() noexcept { // discard any allocated buffer and clear pointers if (_Mystate & _Allocated) { - _Al.deallocate(_Ptr_traits::pointer_to(*_Mysb::eback()), - static_cast::size_type>( - (_Mysb::pptr() ? _Mysb::epptr() : _Mysb::egptr()) - _Mysb::eback())); + if (_Mysb::eback() != nullptr) { + _Al.deallocate(_Ptr_traits::pointer_to(*_Mysb::eback()), + static_cast::size_type>( + (_Mysb::pptr() ? _Mysb::epptr() : _Mysb::egptr()) - _Mysb::eback())); + } } _Mysb::setg(nullptr, nullptr, nullptr); diff --git a/tests/tr1/tests/cstddef/test.cpp b/tests/tr1/tests/cstddef/test.cpp index c8731270d7..4a853fe560 100644 --- a/tests/tr1/tests/cstddef/test.cpp +++ b/tests/tr1/tests/cstddef/test.cpp @@ -23,10 +23,10 @@ void test_cpp() { // test C++ header ptrdiff_t zero = 0; static char* pc = (char*) zero; static const STDx size_t offs[] = {offsetof(Str, f1), offsetof(Str, f2), offsetof(Str, f3)}; - STDx ptrdiff_t pdiff = &pc[INT_MAX] - &pc[0]; wchar_t wc = L'Z'; Str x = {1, {2}, 3}; char* ps = (char*) &x; + STDx ptrdiff_t pdiff = &ps[INT_MAX] - &ps[0]; CHECK_INT(sizeof(STDx size_t), sizeof(sizeof(char))); CHECK_INT(pdiff, &pc[INT_MAX] - &pc[0]); diff --git a/tests/tr1/tests/type_traits5/test.cpp b/tests/tr1/tests/type_traits5/test.cpp index 9cdf000555..a8c93df131 100644 --- a/tests/tr1/tests/type_traits5/test.cpp +++ b/tests/tr1/tests/type_traits5/test.cpp @@ -180,7 +180,7 @@ static void t_add_rvalue_reference() { // test add_rvalue_reference for vario CHECK_TYPEX(STD add_rvalue_reference::type, ARR1 &&); } -typedef enum { red, blue, green } color; +typedef enum color : int { red, blue, green } color; static void t_make_signed() { // test make_signed for various types CHECK_TYPE(STD make_signed::type, signed char); From 5cd74e895b7f83df7ff52d1426fdf62d98e5da56 Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Tue, 14 Feb 2023 05:42:44 +0700 Subject: [PATCH 03/20] remove unused variables --- tests/tr1/tests/cstddef/test.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/tests/tr1/tests/cstddef/test.cpp b/tests/tr1/tests/cstddef/test.cpp index 4a853fe560..7c3840386f 100644 --- a/tests/tr1/tests/cstddef/test.cpp +++ b/tests/tr1/tests/cstddef/test.cpp @@ -20,8 +20,6 @@ typedef struct { } Str; void test_cpp() { // test C++ header - ptrdiff_t zero = 0; - static char* pc = (char*) zero; static const STDx size_t offs[] = {offsetof(Str, f1), offsetof(Str, f2), offsetof(Str, f3)}; wchar_t wc = L'Z'; Str x = {1, {2}, 3}; @@ -29,7 +27,7 @@ void test_cpp() { // test C++ header STDx ptrdiff_t pdiff = &ps[INT_MAX] - &ps[0]; CHECK_INT(sizeof(STDx size_t), sizeof(sizeof(char))); - CHECK_INT(pdiff, &pc[INT_MAX] - &pc[0]); + CHECK_INT(pdiff, &ps[INT_MAX] - &ps[0]); CHECK_INT(wc, L'Z'); CHECK(offs[0] < offs[1]); CHECK_INT((long) *(float*) (ps + offs[1]), 2); From 8cba77bbbe6f7c08290fd38b2935f2e58b7588ac Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Tue, 14 Feb 2023 06:15:02 +0700 Subject: [PATCH 04/20] fix similar cases --- stl/inc/sstream | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stl/inc/sstream b/stl/inc/sstream index d1b2d0ee75..43d5ed7586 100644 --- a/stl/inc/sstream +++ b/stl/inc/sstream @@ -440,7 +440,7 @@ protected: _Mysb::setp(_Pnew, (_State & (_Atend | _Append)) ? _Seekhigh : _Pnew, _Seekhigh); if (_State & _Noread) { // maintain "_Allocated == eback() points to buffer base" invariant - _Mysb::setg(_Pnew, nullptr, _Pnew); + _Mysb::setg(_Pnew, _Pnew, _Pnew); } } @@ -469,7 +469,7 @@ protected: _Mysb::setp(_Pnew, _Next, _End_buffer); if (_State & _Noread) { // maintain "_Allocated == eback() points to buffer base" invariant - _Mysb::setg(_Pnew, nullptr, _Pnew); + _Mysb::setg(_Pnew, _Pnew, _Pnew); } else { _Mysb::setg(_Pnew, _Pnew, _Seekhigh); } From 66f437d98212e94d3567ae010eb3f9c870c2831c Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Tue, 14 Feb 2023 06:32:06 +0700 Subject: [PATCH 05/20] another fix --- stl/inc/sstream | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/stl/inc/sstream b/stl/inc/sstream index 43d5ed7586..7a42239011 100644 --- a/stl/inc/sstream +++ b/stl/inc/sstream @@ -480,11 +480,9 @@ protected: void _Tidy() noexcept { // discard any allocated buffer and clear pointers if (_Mystate & _Allocated) { - if (_Mysb::eback() != nullptr) { - _Al.deallocate(_Ptr_traits::pointer_to(*_Mysb::eback()), - static_cast::size_type>( - (_Mysb::pptr() ? _Mysb::epptr() : _Mysb::egptr()) - _Mysb::eback())); - } + _Al.deallocate(_Ptr_traits::pointer_to(*_Mysb::eback()), + static_cast::size_type>( + (_Mysb::pptr() ? _Mysb::epptr() : _Mysb::egptr()) - _Mysb::eback())); } _Mysb::setg(nullptr, nullptr, nullptr); @@ -523,7 +521,7 @@ private: // TRANSITION, ABI, see GH-938 _Elem* _Seekhigh; // the high-water pointer in character array - int _Mystate; // the stream state + int _Mystate = 0; // the stream state allocator_type _Al; // the allocator object }; From d03bb00286e5d6201c35390b6a54f12b94b05050 Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Tue, 14 Feb 2023 07:34:06 +0700 Subject: [PATCH 06/20] more fixes --- stl/inc/sstream | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/stl/inc/sstream b/stl/inc/sstream index 7a42239011..d2369bfd33 100644 --- a/stl/inc/sstream +++ b/stl/inc/sstream @@ -67,12 +67,12 @@ public: const basic_string<_Elem, _Traits, _Alloc2>& _Str, ios_base::openmode _Mode = ios_base::in | ios_base::out) : basic_stringbuf(_Str, _Mode, _Alloc{}) {} - basic_stringbuf(basic_stringbuf&& _Right, const _Alloc& _Al_) : _Al(_Al_) { + basic_stringbuf(basic_stringbuf&& _Right, const _Alloc& _Al_) : _Al(_Al_), _Mystate(_Right & ~_Allocated) { _Assign_rv(_STD move(_Right)); } #endif // _HAS_CXX20 - basic_stringbuf(basic_stringbuf&& _Right) { + basic_stringbuf(basic_stringbuf&& _Right) : _Mystate(_Right & ~_Allocated) { _Assign_rv(_STD move(_Right)); } @@ -328,6 +328,12 @@ protected: pos_type seekoff( off_type _Off, ios_base::seekdir _Way, ios_base::openmode _Mode = ios_base::in | ios_base::out) override { + + if ((((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread)) + || (((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant))) { + return -1; + } + // change position by _Off, according to _Way, _Mode const auto _Gptr_old = _Mysb::gptr(); const auto _Pptr_old = (_Mystate & _Constant) ? nullptr : _Mysb::pptr(); @@ -388,6 +394,11 @@ protected: } pos_type seekpos(pos_type _Pos, ios_base::openmode _Mode = ios_base::in | ios_base::out) override { + if ((((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread)) + || (((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant))) { + return -1; + } + // change position to _Pos, according to _Mode const auto _Off = static_cast(_Pos); const auto _Gptr_old = _Mysb::gptr(); @@ -521,7 +532,7 @@ private: // TRANSITION, ABI, see GH-938 _Elem* _Seekhigh; // the high-water pointer in character array - int _Mystate = 0; // the stream state + int _Mystate; // the stream state allocator_type _Al; // the allocator object }; From 38396933fab152af2bdc908bb28517ca999701d6 Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Tue, 14 Feb 2023 07:37:24 +0700 Subject: [PATCH 07/20] remove one more UB Co-authored-by: A. Jiang --- tests/tr1/tests/cstddef/test.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/tr1/tests/cstddef/test.cpp b/tests/tr1/tests/cstddef/test.cpp index 7c3840386f..e0d4c158f6 100644 --- a/tests/tr1/tests/cstddef/test.cpp +++ b/tests/tr1/tests/cstddef/test.cpp @@ -21,13 +21,13 @@ typedef struct { void test_cpp() { // test C++ header static const STDx size_t offs[] = {offsetof(Str, f1), offsetof(Str, f2), offsetof(Str, f3)}; + STDx ptrdiff_t pdiff = &offs[2] - &offs[0]; wchar_t wc = L'Z'; Str x = {1, {2}, 3}; char* ps = (char*) &x; - STDx ptrdiff_t pdiff = &ps[INT_MAX] - &ps[0]; CHECK_INT(sizeof(STDx size_t), sizeof(sizeof(char))); - CHECK_INT(pdiff, &ps[INT_MAX] - &ps[0]); + CHECK_INT(pdiff, &offs[2] - &offs[0]); CHECK_INT(wc, L'Z'); CHECK(offs[0] < offs[1]); CHECK_INT((long) *(float*) (ps + offs[1]), 2); From 8502e9b57fc654bc74664dfafe0056c55c26cfbd Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Tue, 14 Feb 2023 07:39:32 +0700 Subject: [PATCH 08/20] remove empty line --- stl/inc/sstream | 1 - 1 file changed, 1 deletion(-) diff --git a/stl/inc/sstream b/stl/inc/sstream index d2369bfd33..cfdcb44177 100644 --- a/stl/inc/sstream +++ b/stl/inc/sstream @@ -328,7 +328,6 @@ protected: pos_type seekoff( off_type _Off, ios_base::seekdir _Way, ios_base::openmode _Mode = ios_base::in | ios_base::out) override { - if ((((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread)) || (((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant))) { return -1; From 2208f7e9fb91c658c40cd79be9c97aa25287420b Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Tue, 14 Feb 2023 07:42:30 +0700 Subject: [PATCH 09/20] typo --- stl/inc/sstream | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stl/inc/sstream b/stl/inc/sstream index cfdcb44177..3470cefc5e 100644 --- a/stl/inc/sstream +++ b/stl/inc/sstream @@ -67,12 +67,12 @@ public: const basic_string<_Elem, _Traits, _Alloc2>& _Str, ios_base::openmode _Mode = ios_base::in | ios_base::out) : basic_stringbuf(_Str, _Mode, _Alloc{}) {} - basic_stringbuf(basic_stringbuf&& _Right, const _Alloc& _Al_) : _Al(_Al_), _Mystate(_Right & ~_Allocated) { + basic_stringbuf(basic_stringbuf&& _Right, const _Alloc& _Al_) : _Al(_Al_), _Mystate(_Right._Mystate & ~_Allocated) { _Assign_rv(_STD move(_Right)); } #endif // _HAS_CXX20 - basic_stringbuf(basic_stringbuf&& _Right) : _Mystate(_Right & ~_Allocated) { + basic_stringbuf(basic_stringbuf&& _Right) : _Mystate(_Right._Mystate & ~_Allocated) { _Assign_rv(_STD move(_Right)); } From e7a73f4b5821ca18552ab624d55e571d4ea7d1a9 Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Tue, 14 Feb 2023 08:04:17 +0700 Subject: [PATCH 10/20] fix `-Wreorder-ctor` --- stl/inc/sstream | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stl/inc/sstream b/stl/inc/sstream index 3470cefc5e..1e649b987f 100644 --- a/stl/inc/sstream +++ b/stl/inc/sstream @@ -67,12 +67,12 @@ public: const basic_string<_Elem, _Traits, _Alloc2>& _Str, ios_base::openmode _Mode = ios_base::in | ios_base::out) : basic_stringbuf(_Str, _Mode, _Alloc{}) {} - basic_stringbuf(basic_stringbuf&& _Right, const _Alloc& _Al_) : _Al(_Al_), _Mystate(_Right._Mystate & ~_Allocated) { + basic_stringbuf(basic_stringbuf&& _Right, const _Alloc& _Al_) : _Mystate(0), _Al(_Al_) { _Assign_rv(_STD move(_Right)); } #endif // _HAS_CXX20 - basic_stringbuf(basic_stringbuf&& _Right) : _Mystate(_Right._Mystate & ~_Allocated) { + basic_stringbuf(basic_stringbuf&& _Right) : _Mystate(0) { _Assign_rv(_STD move(_Right)); } From 9ce0a485dcd740ed2898799115a172cb4e206c54 Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Tue, 14 Feb 2023 08:08:44 +0700 Subject: [PATCH 11/20] return pos_type{-1} instead of -1 --- stl/inc/sstream | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stl/inc/sstream b/stl/inc/sstream index 1e649b987f..45ed54b670 100644 --- a/stl/inc/sstream +++ b/stl/inc/sstream @@ -330,7 +330,7 @@ protected: off_type _Off, ios_base::seekdir _Way, ios_base::openmode _Mode = ios_base::in | ios_base::out) override { if ((((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread)) || (((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant))) { - return -1; + return pos_type{-1}; } // change position by _Off, according to _Way, _Mode @@ -395,7 +395,7 @@ protected: pos_type seekpos(pos_type _Pos, ios_base::openmode _Mode = ios_base::in | ios_base::out) override { if ((((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread)) || (((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant))) { - return -1; + return pos_type{-1}; } // change position to _Pos, according to _Mode From 1249092f50d1ee10351d02bc5bab16b2d0807224 Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Tue, 14 Feb 2023 08:11:30 +0700 Subject: [PATCH 12/20] return pos_type{off_type{-1}}; --- stl/inc/sstream | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stl/inc/sstream b/stl/inc/sstream index 45ed54b670..2541f04982 100644 --- a/stl/inc/sstream +++ b/stl/inc/sstream @@ -330,7 +330,7 @@ protected: off_type _Off, ios_base::seekdir _Way, ios_base::openmode _Mode = ios_base::in | ios_base::out) override { if ((((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread)) || (((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant))) { - return pos_type{-1}; + return pos_type{off_type{-1}}; } // change position by _Off, according to _Way, _Mode @@ -395,7 +395,7 @@ protected: pos_type seekpos(pos_type _Pos, ios_base::openmode _Mode = ios_base::in | ios_base::out) override { if ((((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread)) || (((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant))) { - return pos_type{-1}; + return pos_type{off_type{-1}}; } // change position to _Pos, according to _Mode From 39ab09796f7ee7b40c48c7e21d84da52b54434ff Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Tue, 14 Feb 2023 14:36:56 +0700 Subject: [PATCH 13/20] fix tests Co-authored-by: A. Jiang --- tests/tr1/tests/streambuf1/test.cpp | 2 +- tests/tr1/tests/streambuf2/test.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/tr1/tests/streambuf1/test.cpp b/tests/tr1/tests/streambuf1/test.cpp index ea45517777..78dedcea08 100644 --- a/tests/tr1/tests/streambuf1/test.cpp +++ b/tests/tr1/tests/streambuf1/test.cpp @@ -28,7 +28,7 @@ class Mybuf : public STD streambuf { } void setp(char* p) { // set pptr - Mybase::setp(p, nullptr); + Mybase::setp(p, p); } char* getp() const { // get pptr diff --git a/tests/tr1/tests/streambuf2/test.cpp b/tests/tr1/tests/streambuf2/test.cpp index 12d7202f46..991adeca90 100644 --- a/tests/tr1/tests/streambuf2/test.cpp +++ b/tests/tr1/tests/streambuf2/test.cpp @@ -29,7 +29,7 @@ class Mybuf : public STD wstreambuf { } void setp(wchar_t* p) { // set pptr - Mybase::setp(p, nullptr); + Mybase::setp(p, p); } wchar_t* getp() const { // get pptr From e7055af406df8865546771a87751504b718002c0 Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Wed, 15 Feb 2023 12:10:13 +0700 Subject: [PATCH 14/20] run ubsan only on X64 --- tests/std/tests/char8_t_17_matrix.lst | 1 + tests/std/tests/char8_t_impure_matrix.lst | 1 + tests/std/tests/char8_t_matrix.lst | 1 + tests/std/tests/concepts_20_matrix.lst | 1 + tests/std/tests/concepts_latest_matrix.lst | 1 + tests/std/tests/impure_matrix.lst | 1 + tests/std/tests/locale0_implib_cpp_matrix.lst | 1 + tests/std/tests/strict_concepts_20_matrix.lst | 1 + tests/std/tests/strict_concepts_latest_matrix.lst | 1 + tests/std/tests/usual_17_matrix.lst | 1 + tests/std/tests/usual_20_matrix.lst | 1 + tests/std/tests/usual_latest_matrix.lst | 1 + tests/std/tests/usual_matrix.lst | 1 + tests/tr1/env.lst | 1 + tests/utils/stl/test/features.py | 1 + tests/utils/stl/test/tests.py | 4 +++- 16 files changed, 18 insertions(+), 1 deletion(-) diff --git a/tests/std/tests/char8_t_17_matrix.lst b/tests/std/tests/char8_t_17_matrix.lst index 59128013c6..6d6d71be2c 100644 --- a/tests/std/tests/char8_t_17_matrix.lst +++ b/tests/std/tests/char8_t_17_matrix.lst @@ -34,4 +34,5 @@ PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/char8_t_impure_matrix.lst b/tests/std/tests/char8_t_impure_matrix.lst index 6886008152..512f801890 100644 --- a/tests/std/tests/char8_t_impure_matrix.lst +++ b/tests/std/tests/char8_t_impure_matrix.lst @@ -36,4 +36,5 @@ PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/char8_t_matrix.lst b/tests/std/tests/char8_t_matrix.lst index 42ed35a803..df423534d5 100644 --- a/tests/std/tests/char8_t_matrix.lst +++ b/tests/std/tests/char8_t_matrix.lst @@ -35,4 +35,5 @@ PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive- /w14640 /Zc:threadSafeInit- PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit- -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/concepts_20_matrix.lst b/tests/std/tests/concepts_20_matrix.lst index 3c60d21e57..715a190e6b 100644 --- a/tests/std/tests/concepts_20_matrix.lst +++ b/tests/std/tests/concepts_20_matrix.lst @@ -26,4 +26,5 @@ PM_CL="/clr /MDd /std:c++20 /d1clrcxxstd" # PM_CL="/std:c++20 /permissive- /BE /c /EHsc /MD" # PM_CL="/std:c++latest /permissive- /BE /c /EHsc /MTd" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /permissive- /MDd" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MT /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/concepts_latest_matrix.lst b/tests/std/tests/concepts_latest_matrix.lst index 74d627f10e..5acfdd45b4 100644 --- a/tests/std/tests/concepts_latest_matrix.lst +++ b/tests/std/tests/concepts_latest_matrix.lst @@ -21,4 +21,5 @@ PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /permissive- /analyze:only /analyze:autolo # PM_CL="/permissive- /BE /c /MD" # PM_CL="/permissive- /BE /c /MTd" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MDd" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MT /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/impure_matrix.lst b/tests/std/tests/impure_matrix.lst index dd33791861..0af1ee144e 100644 --- a/tests/std/tests/impure_matrix.lst +++ b/tests/std/tests/impure_matrix.lst @@ -34,4 +34,5 @@ PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/locale0_implib_cpp_matrix.lst b/tests/std/tests/locale0_implib_cpp_matrix.lst index 083d3b3c42..03e2eae594 100644 --- a/tests/std/tests/locale0_implib_cpp_matrix.lst +++ b/tests/std/tests/locale0_implib_cpp_matrix.lst @@ -36,4 +36,5 @@ PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive- /w14640 /Zc:threadSafeInit- PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit- -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/strict_concepts_20_matrix.lst b/tests/std/tests/strict_concepts_20_matrix.lst index 2792011f7f..585e7dd44c 100644 --- a/tests/std/tests/strict_concepts_20_matrix.lst +++ b/tests/std/tests/strict_concepts_20_matrix.lst @@ -25,4 +25,5 @@ PM_CL="/clr /MDd /std:c++20 /d1clrcxxstd" # PM_CL="/std:c++20 /BE /c /EHsc /MD" # PM_CL="/std:c++latest /BE /c /EHsc /MTd" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /MDd" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /MT /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/strict_concepts_latest_matrix.lst b/tests/std/tests/strict_concepts_latest_matrix.lst index 85f1316cc0..c8c0619602 100644 --- a/tests/std/tests/strict_concepts_latest_matrix.lst +++ b/tests/std/tests/strict_concepts_latest_matrix.lst @@ -23,4 +23,5 @@ PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /analyze:only /analyze:autolog-" # PM_CL="/BE /c /MD" # PM_CL="/BE /c /MTd" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /MDd" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /MT /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/usual_17_matrix.lst b/tests/std/tests/usual_17_matrix.lst index b00c802ece..df85c8b837 100644 --- a/tests/std/tests/usual_17_matrix.lst +++ b/tests/std/tests/usual_17_matrix.lst @@ -33,4 +33,5 @@ PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/usual_20_matrix.lst b/tests/std/tests/usual_20_matrix.lst index 4372705acd..68b6ddd40e 100644 --- a/tests/std/tests/usual_20_matrix.lst +++ b/tests/std/tests/usual_20_matrix.lst @@ -23,4 +23,5 @@ PM_CL="/clr /MDd /std:c++20 /d1clrcxxstd" PM_CL="/BE /c /EHsc /MD /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /permissive- /MDd" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MT /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/usual_latest_matrix.lst b/tests/std/tests/usual_latest_matrix.lst index 01435ff04c..b508b0059f 100644 --- a/tests/std/tests/usual_latest_matrix.lst +++ b/tests/std/tests/usual_latest_matrix.lst @@ -21,4 +21,5 @@ PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /permissive- /analyze:only /analyze:autolo PM_CL="/BE /c /MD /permissive-" PM_CL="/BE /c /MTd /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MDd" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MT /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/usual_matrix.lst b/tests/std/tests/usual_matrix.lst index 19606500fb..c6e9d87258 100644 --- a/tests/std/tests/usual_matrix.lst +++ b/tests/std/tests/usual_matrix.lst @@ -35,4 +35,5 @@ PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive- /w14640 /Zc:threadSafeInit- PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit- -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/tr1/env.lst b/tests/tr1/env.lst index 7d979d2a8f..b1ef7117c0 100644 --- a/tests/tr1/env.lst +++ b/tests/tr1/env.lst @@ -30,4 +30,5 @@ PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MD /std:c++14" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MDd /std:c++17" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MTd /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MT /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MT /std:c++latest /permissive- -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/utils/stl/test/features.py b/tests/utils/stl/test/features.py index abfa20bbc6..5a8adf8e64 100644 --- a/tests/utils/stl/test/features.py +++ b/tests/utils/stl/test/features.py @@ -49,6 +49,7 @@ def getDefaultFeatures(config, litConfig): DEFAULT_FEATURES.append(Feature(name='x86')) elif litConfig.target_arch.casefold() == 'x64'.casefold(): + DEFAULT_FEATURES.append(Feature(name='ubsan')) DEFAULT_FEATURES.append(Feature(name='edg')) DEFAULT_FEATURES.append(Feature(name='arch_avx2')) DEFAULT_FEATURES.append(Feature(name='x64')) diff --git a/tests/utils/stl/test/tests.py b/tests/utils/stl/test/tests.py index 09fdeb86fc..5d10ae3038 100644 --- a/tests/utils/stl/test/tests.py +++ b/tests/utils/stl/test/tests.py @@ -249,8 +249,10 @@ def _parseFlags(self, litConfig): self.requires.append('clr_pure') # TRANSITION, GH-798 elif flag[1:] == 'clr': self.requires.append('clr') # TRANSITION, GH-797 + elif flag[1:] == 'fsanitize=undefined': + self.requires.append('ubsan') # available for x64, see features.py elif flag[1:] == 'BE': - self.requires.append('edg') # available for x86, see features.py + self.requires.append('edg') # available for x64, see features.py elif flag[1:] == 'arch:AVX2': self.requires.append('arch_avx2') # available for x86 and x64, see features.py elif flag[1:] == 'arch:IA32': From 3d6f9685e7e25191eae910749e12cb3ad27a9fde Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Thu, 16 Feb 2023 12:16:27 +0700 Subject: [PATCH 15/20] refactor test matrices --- tests/std/tests/char8_t_17_matrix.lst | 4 ++-- tests/std/tests/char8_t_impure_matrix.lst | 4 ++-- tests/std/tests/char8_t_matrix.lst | 4 ++-- tests/std/tests/concepts_20_matrix.lst | 4 ++-- tests/std/tests/concepts_latest_matrix.lst | 4 ++-- tests/std/tests/impure_matrix.lst | 4 ++-- tests/std/tests/locale0_implib_cpp_matrix.lst | 4 ++-- tests/std/tests/strict_concepts_20_matrix.lst | 4 ++-- tests/std/tests/strict_concepts_latest_matrix.lst | 4 ++-- tests/std/tests/usual_17_matrix.lst | 4 ++-- tests/std/tests/usual_20_matrix.lst | 4 ++-- tests/std/tests/usual_latest_matrix.lst | 4 ++-- tests/std/tests/usual_matrix.lst | 4 ++-- tests/tr1/env_minus_md_idl.lst | 1 + tests/tr1/env_minus_pure.lst | 1 + 15 files changed, 28 insertions(+), 26 deletions(-) diff --git a/tests/std/tests/char8_t_17_matrix.lst b/tests/std/tests/char8_t_17_matrix.lst index 6d6d71be2c..4f65db05d5 100644 --- a/tests/std/tests/char8_t_17_matrix.lst +++ b/tests/std/tests/char8_t_17_matrix.lst @@ -33,6 +33,6 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/char8_t_impure_matrix.lst b/tests/std/tests/char8_t_impure_matrix.lst index 512f801890..4cb84e949b 100644 --- a/tests/std/tests/char8_t_impure_matrix.lst +++ b/tests/std/tests/char8_t_impure_matrix.lst @@ -35,6 +35,6 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/char8_t_matrix.lst b/tests/std/tests/char8_t_matrix.lst index df423534d5..68609ba402 100644 --- a/tests/std/tests/char8_t_matrix.lst +++ b/tests/std/tests/char8_t_matrix.lst @@ -34,6 +34,6 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive- /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17 /w14640 /Zc:threadSafeInit-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit- -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/concepts_20_matrix.lst b/tests/std/tests/concepts_20_matrix.lst index 715a190e6b..a52cb71782 100644 --- a/tests/std/tests/concepts_20_matrix.lst +++ b/tests/std/tests/concepts_20_matrix.lst @@ -25,6 +25,6 @@ PM_CL="/clr /MD /std:c++20 /d1clrcxxstd" PM_CL="/clr /MDd /std:c++20 /d1clrcxxstd" # PM_CL="/std:c++20 /permissive- /BE /c /EHsc /MD" # PM_CL="/std:c++latest /permissive- /BE /c /EHsc /MTd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /permissive- /MDd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MT /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /permissive- /MD" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MTd /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/concepts_latest_matrix.lst b/tests/std/tests/concepts_latest_matrix.lst index 5acfdd45b4..ecf410ca03 100644 --- a/tests/std/tests/concepts_latest_matrix.lst +++ b/tests/std/tests/concepts_latest_matrix.lst @@ -20,6 +20,6 @@ PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /permissive" PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /permissive- /analyze:only /analyze:autolog-" # PM_CL="/permissive- /BE /c /MD" # PM_CL="/permissive- /BE /c /MTd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MDd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MT /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MD" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MTd /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/impure_matrix.lst b/tests/std/tests/impure_matrix.lst index 0af1ee144e..8655e97ad7 100644 --- a/tests/std/tests/impure_matrix.lst +++ b/tests/std/tests/impure_matrix.lst @@ -33,6 +33,6 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/locale0_implib_cpp_matrix.lst b/tests/std/tests/locale0_implib_cpp_matrix.lst index 03e2eae594..12aeb97080 100644 --- a/tests/std/tests/locale0_implib_cpp_matrix.lst +++ b/tests/std/tests/locale0_implib_cpp_matrix.lst @@ -35,6 +35,6 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive- /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17 /w14640 /Zc:threadSafeInit-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit- -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/strict_concepts_20_matrix.lst b/tests/std/tests/strict_concepts_20_matrix.lst index 585e7dd44c..a4407e049d 100644 --- a/tests/std/tests/strict_concepts_20_matrix.lst +++ b/tests/std/tests/strict_concepts_20_matrix.lst @@ -24,6 +24,6 @@ PM_CL="/clr /MD /std:c++20 /d1clrcxxstd" PM_CL="/clr /MDd /std:c++20 /d1clrcxxstd" # PM_CL="/std:c++20 /BE /c /EHsc /MD" # PM_CL="/std:c++latest /BE /c /EHsc /MTd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /MDd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /MT /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /MD" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /MTd /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/strict_concepts_latest_matrix.lst b/tests/std/tests/strict_concepts_latest_matrix.lst index c8c0619602..2604c0e479 100644 --- a/tests/std/tests/strict_concepts_latest_matrix.lst +++ b/tests/std/tests/strict_concepts_latest_matrix.lst @@ -22,6 +22,6 @@ PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2" PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /analyze:only /analyze:autolog-" # PM_CL="/BE /c /MD" # PM_CL="/BE /c /MTd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /MDd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /MT /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /MD" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /MTd /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/usual_17_matrix.lst b/tests/std/tests/usual_17_matrix.lst index df85c8b837..77244de69b 100644 --- a/tests/std/tests/usual_17_matrix.lst +++ b/tests/std/tests/usual_17_matrix.lst @@ -32,6 +32,6 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/usual_20_matrix.lst b/tests/std/tests/usual_20_matrix.lst index 68b6ddd40e..0f9e7b18a0 100644 --- a/tests/std/tests/usual_20_matrix.lst +++ b/tests/std/tests/usual_20_matrix.lst @@ -22,6 +22,6 @@ PM_CL="/clr /MD /std:c++20 /d1clrcxxstd" PM_CL="/clr /MDd /std:c++20 /d1clrcxxstd" PM_CL="/BE /c /EHsc /MD /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /permissive- /MDd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MT /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++20 /permissive- /MD" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MTd /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /std:c++latest /permissive- /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/usual_latest_matrix.lst b/tests/std/tests/usual_latest_matrix.lst index b508b0059f..68e6e2fbca 100644 --- a/tests/std/tests/usual_latest_matrix.lst +++ b/tests/std/tests/usual_latest_matrix.lst @@ -20,6 +20,6 @@ PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /permissive" PM_CL="/MTd /D_ITERATOR_DEBUG_LEVEL=2 /permissive- /analyze:only /analyze:autolog-" PM_CL="/BE /c /MD /permissive-" PM_CL="/BE /c /MTd /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MDd" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MT /fp:strict" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MD" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MTd /fp:strict" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /permissive- /MT /fp:strict -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/std/tests/usual_matrix.lst b/tests/std/tests/usual_matrix.lst index c6e9d87258..80557615b2 100644 --- a/tests/std/tests/usual_matrix.lst +++ b/tests/std/tests/usual_matrix.lst @@ -34,6 +34,6 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive- /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MD /std:c++14 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MDd /std:c++17 /w14640 /Zc:threadSafeInit-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++20 /permissive- /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MTd /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call /EHsc /MT /std:c++latest /permissive- /fp:strict /w14640 /Zc:threadSafeInit- -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/tr1/env_minus_md_idl.lst b/tests/tr1/env_minus_md_idl.lst index 2f217abb1b..4c0bd9d4de 100644 --- a/tests/tr1/env_minus_md_idl.lst +++ b/tests/tr1/env_minus_md_idl.lst @@ -26,3 +26,4 @@ PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive- /w14640 /Zc:threadSafeInit- PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MD /std:c++14 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MDd /std:c++17 /w14640 /Zc:threadSafeInit-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MTd /std:c++latest /permissive- /w14640 /Zc:threadSafeInit-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MT /std:c++latest /permissive- /w14640 /Zc:threadSafeInit- -fsanitize=undefined -fno-sanitize-recover=undefined" diff --git a/tests/tr1/env_minus_pure.lst b/tests/tr1/env_minus_pure.lst index faac16a6d3..77d7e97a32 100644 --- a/tests/tr1/env_minus_pure.lst +++ b/tests/tr1/env_minus_pure.lst @@ -27,3 +27,4 @@ PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MD /std:c++14" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MDd /std:c++17" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MTd /std:c++latest /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MT /std:c++latest /permissive- -fsanitize=undefined -fno-sanitize-recover=undefined" From 856a6b1c3816a38cc68a6690c87dff701aca05b9 Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Thu, 16 Feb 2023 12:17:45 +0700 Subject: [PATCH 16/20] one more --- tests/tr1/env.lst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/tr1/env.lst b/tests/tr1/env.lst index b1ef7117c0..f34f83a953 100644 --- a/tests/tr1/env.lst +++ b/tests/tr1/env.lst @@ -29,6 +29,6 @@ PM_CL="/BE /c /EHsc /MT /std:c++20 /permissive-" PM_CL="/BE /c /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MD /std:c++14" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MDd /std:c++17" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MTd /std:c++20 /permissive-" -PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MT /std:c++latest /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MT /std:c++20 /permissive-" +PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MTd /std:c++latest /permissive-" PM_COMPILER="clang-cl" PM_CL="-fno-ms-compatibility -fno-delayed-template-parsing -Wno-unqualified-std-cast-call -Xclang -Wno-deprecated-declarations -Xclang -Wno-self-assign /EHsc /MT /std:c++latest /permissive- -fsanitize=undefined -fno-sanitize-recover=undefined" From 3e680d566daf7df20b41c12e5c48d169385d956e Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Thu, 16 Feb 2023 12:38:54 +0700 Subject: [PATCH 17/20] typo --- tests/tr1/tests/chrono/test.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/tr1/tests/chrono/test.cpp b/tests/tr1/tests/chrono/test.cpp index d02fa73132..635a66a4be 100644 --- a/tests/tr1/tests/chrono/test.cpp +++ b/tests/tr1/tests/chrono/test.cpp @@ -53,9 +53,9 @@ namespace { CHECK_INT(d_i::max(), STD numeric_limits::max()); typedef STD chrono::duration_values d_d; - CHECK_INT(d_d::zero(), 0.0); - CHECK_INT(d_d::min(), STD numeric_limits::lowest()); - CHECK_INT(d_d::max(), STD numeric_limits::max()); + CHECK_DOUBLE(d_d::zero(), 0.0); + CHECK_DOUBLE(d_d::min(), STD numeric_limits::lowest()); + CHECK_DOUBLE(d_d::max(), STD numeric_limits::max()); } template From 84a2f4ff0ef697887a37d076d75312b91e281234 Mon Sep 17 00:00:00 2001 From: Igor Zhukov Date: Sat, 18 Feb 2023 14:10:55 +0700 Subject: [PATCH 18/20] refactor a bit --- stl/inc/sstream | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/stl/inc/sstream b/stl/inc/sstream index 2541f04982..7ca8c9fc49 100644 --- a/stl/inc/sstream +++ b/stl/inc/sstream @@ -328,8 +328,10 @@ protected: pos_type seekoff( off_type _Off, ios_base::seekdir _Way, ios_base::openmode _Mode = ios_base::in | ios_base::out) override { - if ((((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread)) - || (((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant))) { + const bool _Need_read_but_cant = ((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread); + const bool _Need_write_but_cant = + ((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant); + if (_Need_read_but_cant || _Need_write_but_cant) { return pos_type{off_type{-1}}; } @@ -393,8 +395,10 @@ protected: } pos_type seekpos(pos_type _Pos, ios_base::openmode _Mode = ios_base::in | ios_base::out) override { - if ((((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread)) - || (((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant))) { + const bool _Need_read_but_cant = ((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread); + const bool _Need_write_but_cant = + ((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant); + if (_Need_read_but_cant || _Need_write_but_cant) { return pos_type{off_type{-1}}; } From 1e8b88cd831856fa3feb64108b20e4634c165a28 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Wed, 8 Mar 2023 11:29:36 -0800 Subject: [PATCH 19/20] Drop self-typedef. --- tests/tr1/tests/type_traits5/test.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/tr1/tests/type_traits5/test.cpp b/tests/tr1/tests/type_traits5/test.cpp index a8c93df131..e0ef94e1d3 100644 --- a/tests/tr1/tests/type_traits5/test.cpp +++ b/tests/tr1/tests/type_traits5/test.cpp @@ -180,7 +180,7 @@ static void t_add_rvalue_reference() { // test add_rvalue_reference for vario CHECK_TYPEX(STD add_rvalue_reference::type, ARR1 &&); } -typedef enum color : int { red, blue, green } color; +enum color : int { red, blue, green }; static void t_make_signed() { // test make_signed for various types CHECK_TYPE(STD make_signed::type, signed char); From 23f93b0c77d1247bcae6b2dcb1c44dfd1cd22ccf Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Wed, 8 Mar 2023 11:47:50 -0800 Subject: [PATCH 20/20] Simplify `_Need_MEOW_but_cannot`. --- stl/inc/sstream | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/stl/inc/sstream b/stl/inc/sstream index 7ca8c9fc49..12a90ae565 100644 --- a/stl/inc/sstream +++ b/stl/inc/sstream @@ -328,10 +328,9 @@ protected: pos_type seekoff( off_type _Off, ios_base::seekdir _Way, ios_base::openmode _Mode = ios_base::in | ios_base::out) override { - const bool _Need_read_but_cant = ((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread); - const bool _Need_write_but_cant = - ((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant); - if (_Need_read_but_cant || _Need_write_but_cant) { + const bool _Need_read_but_cannot = (_Mode & ios_base::in) != 0 && (_Mystate & _Noread) != 0; + const bool _Need_write_but_cannot = (_Mode & ios_base::out) != 0 && (_Mystate & _Constant) != 0; + if (_Need_read_but_cannot || _Need_write_but_cannot) { return pos_type{off_type{-1}}; } @@ -395,10 +394,9 @@ protected: } pos_type seekpos(pos_type _Pos, ios_base::openmode _Mode = ios_base::in | ios_base::out) override { - const bool _Need_read_but_cant = ((_Mode & ios_base::in) == ios_base::in) && ((_Mystate & _Noread) == _Noread); - const bool _Need_write_but_cant = - ((_Mode & ios_base::out) == ios_base::out) && ((_Mystate & _Constant) == _Constant); - if (_Need_read_but_cant || _Need_write_but_cant) { + const bool _Need_read_but_cannot = (_Mode & ios_base::in) != 0 && (_Mystate & _Noread) != 0; + const bool _Need_write_but_cannot = (_Mode & ios_base::out) != 0 && (_Mystate & _Constant) != 0; + if (_Need_read_but_cannot || _Need_write_but_cannot) { return pos_type{off_type{-1}}; }