diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2022-07-06 23:12:43 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2022-07-06 23:12:43 +0300 |
commit | e89d068d51f29e4cd2b5135d6b42979f0d2ccd0b (patch) | |
tree | 51fb3e835d0da8020a2c4fc8aad71d1f4530b11e | |
parent | 15078112f9a04915d702d7a07018589cccdccf20 (diff) | |
download | meson-ignoreencodingerrors.zip meson-ignoreencodingerrors.tar.gz meson-ignoreencodingerrors.tar.bz2 |
Ignore encoding errors when scanning. Closes #10571.ignoreencodingerrors
In Fortran and C++ all the bits we care about are in ASCII. 8-bit
characters can only occur in comments and string literals and we don't
parse those.
-rw-r--r-- | mesonbuild/scripts/depscan.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/mesonbuild/scripts/depscan.py b/mesonbuild/scripts/depscan.py index 6f92715..5fa30cb 100644 --- a/mesonbuild/scripts/depscan.py +++ b/mesonbuild/scripts/depscan.py @@ -62,7 +62,7 @@ class DependencyScanner: def scan_fortran_file(self, fname: str) -> None: fpath = pathlib.Path(fname) modules_in_this_file = set() - for line in fpath.read_text(encoding='utf-8').split('\n'): + for line in fpath.read_text(encoding='utf-8', errors='ignore').split('\n'): import_match = FORTRAN_USE_RE.match(line) export_match = FORTRAN_MODULE_RE.match(line) submodule_export_match = FORTRAN_SUBMOD_RE.match(line) @@ -112,7 +112,7 @@ class DependencyScanner: def scan_cpp_file(self, fname: str) -> None: fpath = pathlib.Path(fname) - for line in fpath.read_text(encoding='utf-8').split('\n'): + for line in fpath.read_text(encoding='utf-8', errors='ignore').split('\n'): import_match = CPP_IMPORT_RE.match(line) export_match = CPP_EXPORT_RE.match(line) if import_match: |