[clang] f385542 - [Tooling/Inclusion] Modify the Python script to open the C++ reference with UTF-8 encoding. (#121341)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Dec 30 17:28:37 PST 2024
Author: c8ef
Date: 2024-12-31T09:28:34+08:00
New Revision: f385542f62fa1f57001c95c476165e1618cb54ba
URL: https://github.com/llvm/llvm-project/commit/f385542f62fa1f57001c95c476165e1618cb54ba
DIFF: https://github.com/llvm/llvm-project/commit/f385542f62fa1f57001c95c476165e1618cb54ba.diff
LOG: [Tooling/Inclusion] Modify the Python script to open the C++ reference with UTF-8 encoding. (#121341)
This will prevent the error on systems with a default encoding other
than utf-8.
```
UnicodeDecodeError: 'gbk' codec can't decode byte 0xb6 in position 12958: illegal multibyte sequence
```
Added:
Modified:
clang/tools/include-mapping/cppreference_parser.py
Removed:
################################################################################
diff --git a/clang/tools/include-mapping/cppreference_parser.py b/clang/tools/include-mapping/cppreference_parser.py
index 9101f3dbff0f94..f7da2ba8bb6d84 100644
--- a/clang/tools/include-mapping/cppreference_parser.py
+++ b/clang/tools/include-mapping/cppreference_parser.py
@@ -139,7 +139,7 @@ def _ParseIndexPage(index_page_html):
def _ReadSymbolPage(path, name, qual_name):
- with open(path) as f:
+ with open(path, encoding="utf-8") as f:
return _ParseSymbolPage(f.read(), name, qual_name)
@@ -156,7 +156,7 @@ def _GetSymbols(pool, root_dir, index_page_name, namespace, variants_to_accept):
# contains the defined header.
# 2. Parse the symbol page to get the defined header.
index_page_path = os.path.join(root_dir, index_page_name)
- with open(index_page_path, "r") as f:
+ with open(index_page_path, "r", encoding="utf-8") as f:
# Read each symbol page in parallel.
results = [] # (symbol_name, promise of [header...])
for symbol_name, symbol_page_path, variant in _ParseIndexPage(f.read()):
More information about the cfe-commits
mailing list