[libcxx-commits] [libcxx] [libc++] Fix SyntaxWarning messages from python 3.12 (PR #93637)
via libcxx-commits
libcxx-commits at lists.llvm.org
Tue May 28 20:32:29 PDT 2024
https://github.com/AngryLoki created https://github.com/llvm/llvm-project/pull/93637
This fixes "SyntaxWarning: invalid escape sequence" and "SyntaxWarning: "is" with 'int' literal".
`transitive_includes.gen.py` was also reformatted with `darker` per style guide.
Checked with: `cd libcxx && python -m compileall -d . -f -q .`
PR split from https://github.com/llvm/llvm-project/pull/86806
>From ddc1ff9e73e5ab8e404beea3917c5ee0f70ad53d Mon Sep 17 00:00:00 2001
From: "Sv. Lockal" <lockalsash at gmail.com>
Date: Wed, 29 May 2024 03:26:34 +0000
Subject: [PATCH] [libc++] Fix SyntaxWarning messages from python 3.12
This fixes "SyntaxWarning: invalid escape sequence" and "SyntaxWarning: "is" with 'int' literal".
`transitive_includes.gen.py` was also reformatted with `darker` per style guide.
Checked with: `cd libcxx && python -m compileall -d . -f -q .`
Signed-off-by: Sv. Lockal <lockalsash at gmail.com>
---
libcxx/test/libcxx/transitive_includes.gen.py | 46 +++++++++++--------
libcxx/utils/generate_escaped_output_table.py | 2 +-
.../utils/generate_width_estimation_table.py | 2 +-
3 files changed, 29 insertions(+), 21 deletions(-)
diff --git a/libcxx/test/libcxx/transitive_includes.gen.py b/libcxx/test/libcxx/transitive_includes.gen.py
index a67cab693b6e2..834f21f125437 100644
--- a/libcxx/test/libcxx/transitive_includes.gen.py
+++ b/libcxx/test/libcxx/transitive_includes.gen.py
@@ -33,35 +33,42 @@
regenerate_expected_results = False
if regenerate_expected_results:
- print(f"""\
+ print(
+ f"""\
//--- generate-transitive-includes.sh.cpp
// RUN: mkdir %t
-""")
+"""
+ )
- all_traces = []
- for header in sorted(public_headers):
- if header.endswith('.h'): # Skip C compatibility or detail headers
- continue
+ all_traces = []
+ for header in sorted(public_headers):
+ if header.endswith(".h"): # Skip C compatibility or detail headers
+ continue
- normalized_header = re.sub('/', '_', header)
- print(f"""\
+ normalized_header = re.sub("/", "_", header)
+ print(
+ f"""\
// RUN: echo "#include <{header}>" | %{{cxx}} -xc++ - %{{flags}} %{{compile_flags}} --trace-includes -fshow-skipped-includes --preprocess > /dev/null 2> %t/trace-includes.{normalized_header}.txt
-""")
- all_traces.append(f'%t/trace-includes.{normalized_header}.txt')
+"""
+ )
+ all_traces.append(f"%t/trace-includes.{normalized_header}.txt")
- print(f"""\
+ print(
+ f"""\
// RUN: %{{python}} %{{libcxx-dir}}/test/libcxx/transitive_includes_to_csv.py {' '.join(all_traces)} > %{{libcxx-dir}}/test/libcxx/transitive_includes/%{{cxx_std}}.csv
-""")
+"""
+ )
else:
- for header in public_headers:
- if header.endswith('.h'): # Skip C compatibility or detail headers
- continue
+ for header in public_headers:
+ if header.endswith(".h"): # Skip C compatibility or detail headers
+ continue
- # Escape slashes for the awk command below
- escaped_header = header.replace('/', '\/')
+ # Escape slashes for the awk command below
+ escaped_header = header.replace("/", "\\/")
- print(f"""\
+ print(
+ f"""\
//--- {header}.sh.cpp
{lit_header_restrictions.get(header, '')}
@@ -89,4 +96,5 @@
// RUN: cat %{{libcxx-dir}}/test/libcxx/transitive_includes/%{{cxx_std}}.csv | awk '/^{escaped_header} / {{ print }}' > %t/expected_transitive_includes.csv
// RUN: diff -w %t/expected_transitive_includes.csv %t/actual_transitive_includes.csv
#include <{header}>
-""")
+"""
+ )
diff --git a/libcxx/utils/generate_escaped_output_table.py b/libcxx/utils/generate_escaped_output_table.py
index 523a0be3a451d..c0b21f7731f64 100755
--- a/libcxx/utils/generate_escaped_output_table.py
+++ b/libcxx/utils/generate_escaped_output_table.py
@@ -131,7 +131,7 @@ def compactPropertyRanges(input: list[PropertyRange]) -> list[PropertyRange]:
/// more details.
///
-/// \pre The code point is a valid Unicode code point.
+/// \\pre The code point is a valid Unicode code point.
[[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr bool __needs_escape(const char32_t __code_point) noexcept {{
// The entries in the gap at the end.
diff --git a/libcxx/utils/generate_width_estimation_table.py b/libcxx/utils/generate_width_estimation_table.py
index 918dae25fe49e..2fe51490449dd 100644
--- a/libcxx/utils/generate_width_estimation_table.py
+++ b/libcxx/utils/generate_width_estimation_table.py
@@ -155,7 +155,7 @@ def compactPropertyRanges(input: list[PropertyRange]) -> list[PropertyRange]:
/// Returns the estimated width of a Unicode code point.
///
-/// \pre The code point is a valid Unicode code point.
+/// \\pre The code point is a valid Unicode code point.
[[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr int __estimated_width(const char32_t __code_point) noexcept {{
// Since __table_upper_bound contains the unshifted range do the
// comparison without shifting.
More information about the libcxx-commits
mailing list