From 99af21565db04871af522b7ed9f584cad1c323cb Mon Sep 17 00:00:00 2001 From: Dylan Baker Date: Thu, 13 Nov 2025 09:44:53 -0800 Subject: compilers: Remove Environment parameter from Compiler.has_type --- mesonbuild/compilers/compilers.py | 2 +- mesonbuild/compilers/cython.py | 1 - mesonbuild/compilers/mixins/clike.py | 5 ++--- mesonbuild/compilers/mixins/elbrus.py | 1 - mesonbuild/interpreter/compiler.py | 2 +- 5 files changed, 4 insertions(+), 7 deletions(-) diff --git a/mesonbuild/compilers/compilers.py b/mesonbuild/compilers/compilers.py index 64ef53cd6..46d74a8cd 100644 --- a/mesonbuild/compilers/compilers.py +++ b/mesonbuild/compilers/compilers.py @@ -569,7 +569,7 @@ class Compiler(HoldableObject, metaclass=abc.ABCMeta): dependencies: T.Optional[T.List['Dependency']] = None) -> T.Tuple[bool, bool]: raise EnvironmentException('%s does not support has_member(s) ' % self.get_id()) - def has_type(self, typename: str, prefix: str, env: 'Environment', + def has_type(self, typename: str, prefix: str, extra_args: T.Union[T.List[str], T.Callable[[CompileCheckMode], T.List[str]]], *, dependencies: T.Optional[T.List['Dependency']] = None) -> T.Tuple[bool, bool]: raise EnvironmentException('%s does not support has_type ' % self.get_id()) diff --git a/mesonbuild/compilers/cython.py b/mesonbuild/compilers/cython.py index ceb1f2b33..9dba74da7 100644 --- a/mesonbuild/compilers/cython.py +++ b/mesonbuild/compilers/cython.py @@ -12,7 +12,6 @@ from .compilers import Compiler if T.TYPE_CHECKING: from ..options import MutableKeyedOptionDictType - from ..environment import Environment from ..build import BuildTarget diff --git a/mesonbuild/compilers/mixins/clike.py b/mesonbuild/compilers/mixins/clike.py index 173a38317..4a1e11aff 100644 --- a/mesonbuild/compilers/mixins/clike.py +++ b/mesonbuild/compilers/mixins/clike.py @@ -878,15 +878,14 @@ class CLikeCompiler(Compiler): return self.compiles(t, extra_args=extra_args, dependencies=dependencies) - def has_type(self, typename: str, prefix: str, env: 'Environment', + def has_type(self, typename: str, prefix: str, extra_args: T.Union[T.List[str], T.Callable[[CompileCheckMode], T.List[str]]], *, dependencies: T.Optional[T.List['Dependency']] = None) -> T.Tuple[bool, bool]: t = f'''{prefix} void bar(void) {{ (void) sizeof({typename}); }}''' - return self.compiles(t, extra_args=extra_args, - dependencies=dependencies) + return self.compiles(t, extra_args=extra_args, dependencies=dependencies) def _symbols_have_underscore_prefix_searchbin(self) -> bool: ''' diff --git a/mesonbuild/compilers/mixins/elbrus.py b/mesonbuild/compilers/mixins/elbrus.py index 7cc980e6b..e02012389 100644 --- a/mesonbuild/compilers/mixins/elbrus.py +++ b/mesonbuild/compilers/mixins/elbrus.py @@ -17,7 +17,6 @@ from ...mesonlib import Popen_safe from ...options import OptionKey if T.TYPE_CHECKING: - from ...environment import Environment from ...build import BuildTarget diff --git a/mesonbuild/interpreter/compiler.py b/mesonbuild/interpreter/compiler.py index 0d5aa9505..dbbbdf553 100644 --- a/mesonbuild/interpreter/compiler.py +++ b/mesonbuild/interpreter/compiler.py @@ -410,7 +410,7 @@ class CompilerHolder(ObjectHolder['Compiler']): return False extra_args = functools.partial(self._determine_args, kwargs) deps, msg = self._determine_dependencies(kwargs['dependencies']) - had, cached = self.compiler.has_type(typename, kwargs['prefix'], self.environment, + had, cached = self.compiler.has_type(typename, kwargs['prefix'], extra_args=extra_args, dependencies=deps) cached_msg = mlog.blue('(cached)') if cached else '' if required and not had: -- cgit v1.2.3