summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mesonbuild/compilers/mixins/clike.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/mesonbuild/compilers/mixins/clike.py b/mesonbuild/compilers/mixins/clike.py
index ac2344bf8..d273015bc 100644
--- a/mesonbuild/compilers/mixins/clike.py
+++ b/mesonbuild/compilers/mixins/clike.py
@@ -625,9 +625,17 @@ class CLikeCompiler(Compiler):
raise mesonlib.EnvironmentException('Could not compile alignment test.')
if res.returncode != 0:
raise mesonlib.EnvironmentException('Could not run alignment test binary.')
- align = int(res.stdout)
+
+ align: int
+ try:
+ align = int(res.stdout)
+ except ValueError:
+ # If we get here, the user is most likely using a script that is
+ # pretending to be a compiler.
+ raise mesonlib.EnvironmentException('Could not run alignment test binary.')
if align == 0:
raise mesonlib.EnvironmentException(f'Could not determine alignment of {typename}. Sorry. You might want to file a bug.')
+
return align, res.cached
def get_define(self, dname: str, prefix: str, env: 'Environment',