From 7b8685e63fec180bbb01e6e8a14cf19dcdc6440c Mon Sep 17 00:00:00 2001 From: Dylan Baker Date: Thu, 13 Nov 2025 09:45:30 -0800 Subject: compilers: Remove Environment parameter from Compiler.has_members --- mesonbuild/compilers/compilers.py | 3 +-- mesonbuild/compilers/mixins/clike.py | 6 ++---- mesonbuild/interpreter/compiler.py | 8 ++------ 3 files changed, 5 insertions(+), 12 deletions(-) diff --git a/mesonbuild/compilers/compilers.py b/mesonbuild/compilers/compilers.py index 46d74a8cd..ad793ffaf 100644 --- a/mesonbuild/compilers/compilers.py +++ b/mesonbuild/compilers/compilers.py @@ -563,8 +563,7 @@ class Compiler(HoldableObject, metaclass=abc.ABCMeta): build_dir: str) -> T.List[str]: raise EnvironmentException('%s does not support compute_parameters_with_absolute_paths ' % self.get_id()) - def has_members(self, typename: str, membernames: T.List[str], - prefix: str, env: 'Environment', *, + def has_members(self, typename: str, membernames: T.List[str], prefix: str, *, extra_args: T.Union[None, T.List[str], T.Callable[[CompileCheckMode], T.List[str]]] = None, dependencies: T.Optional[T.List['Dependency']] = None) -> T.Tuple[bool, bool]: raise EnvironmentException('%s does not support has_member(s) ' % self.get_id()) diff --git a/mesonbuild/compilers/mixins/clike.py b/mesonbuild/compilers/mixins/clike.py index 4a1e11aff..ea69f50c3 100644 --- a/mesonbuild/compilers/mixins/clike.py +++ b/mesonbuild/compilers/mixins/clike.py @@ -861,8 +861,7 @@ class CLikeCompiler(Compiler): return self.links(t.format(**fargs), extra_args=extra_args, dependencies=dependencies) - def has_members(self, typename: str, membernames: T.List[str], - prefix: str, env: 'Environment', *, + def has_members(self, typename: str, membernames: T.List[str], prefix: str, *, extra_args: T.Union[None, T.List[str], T.Callable[[CompileCheckMode], T.List[str]]] = None, dependencies: T.Optional[T.List['Dependency']] = None) -> T.Tuple[bool, bool]: if extra_args is None: @@ -875,8 +874,7 @@ class CLikeCompiler(Compiler): {members} (void) foo; }}''' - return self.compiles(t, extra_args=extra_args, - dependencies=dependencies) + return self.compiles(t, extra_args=extra_args, dependencies=dependencies) def has_type(self, typename: str, prefix: str, extra_args: T.Union[T.List[str], T.Callable[[CompileCheckMode], T.List[str]]], *, diff --git a/mesonbuild/interpreter/compiler.py b/mesonbuild/interpreter/compiler.py index dbbbdf553..e22b02a94 100644 --- a/mesonbuild/interpreter/compiler.py +++ b/mesonbuild/interpreter/compiler.py @@ -333,9 +333,7 @@ class CompilerHolder(ObjectHolder['Compiler']): extra_args = functools.partial(self._determine_args, kwargs) deps, msg = self._determine_dependencies(kwargs['dependencies']) had, cached = self.compiler.has_members(typename, [membername], kwargs['prefix'], - self.environment, - extra_args=extra_args, - dependencies=deps) + extra_args=extra_args, dependencies=deps) cached_msg = mlog.blue('(cached)') if cached else '' if required and not had: raise InterpreterException(f'{self.compiler.get_display_language()} member {membername!r} of type {typename!r} not usable') @@ -360,9 +358,7 @@ class CompilerHolder(ObjectHolder['Compiler']): extra_args = functools.partial(self._determine_args, kwargs) deps, msg = self._determine_dependencies(kwargs['dependencies']) had, cached = self.compiler.has_members(typename, membernames, kwargs['prefix'], - self.environment, - extra_args=extra_args, - dependencies=deps) + extra_args=extra_args, dependencies=deps) cached_msg = mlog.blue('(cached)') if cached else '' if required and not had: # print members as array: ['member1', 'member2'] -- cgit v1.2.3