@typed_kwargs('add_languages', KwargInfo('native', (bool, NoneType), since='0.54.0'), REQUIRED_KW)
@typed_pos_args('add_languages', varargs=str)
def func_add_languages(self, node: mparser.FunctionNode, args: T.Tuple[T.List[str]], kwargs: 'kwargs.FuncAddLanguages') -> bool:
    langs = args[0]
    (disabled, required, feature) = extract_required_kwarg(kwargs, self.subproject)
    native = kwargs['native']
    if disabled:
        for lang in sorted(langs, key=compilers.sort_clink):
            mlog.log('Compiler for language', mlog.bold(lang), 'skipped: feature', mlog.bold(feature), 'disabled')
        return False
    if (native is not None):
        return self.add_languages(langs, required, self.machine_from_native_kwarg(kwargs))
    else:
        tv = FeatureNew.get_target_version(self.subproject)
        if FeatureNew.check_version(tv, '0.54.0'):
            mlog.warning('add_languages is missing native:, assuming languages are wanted for both host and build.', location=node)
        success = self.add_languages(langs, False, MachineChoice.BUILD)
        success &= self.add_languages(langs, required, MachineChoice.HOST)
        return success
@typed_kwargs('add_languages', KwargInfo('native', (bool, NoneType), since='0.54.0'), REQUIRED_KW)
@typed_pos_args('add_languages', varargs=str)
def func_add_languages(self, node: mparser.FunctionNode, args: T.Tuple[T.List[str]], kwargs: 'kwargs.FuncAddLanguages') -> bool:
    langs = args[0]
    (disabled, required, feature) = extract_required_kwarg(kwargs, self.subproject)
    native = kwargs['native']
    if disabled:
        for lang in sorted(langs, key=compilers.sort_clink):
            mlog.log('Compiler for language', mlog.bold(lang), 'skipped: feature', mlog.bold(feature), 'disabled')
        return False
    if (native is not None):
        return self.add_languages(langs, required, self.machine_from_native_kwarg(kwargs))
    else:
        tv = FeatureNew.get_target_version(self.subproject)
        if FeatureNew.check_version(tv, '0.54.0'):
            mlog.warning('add_languages is missing native:, assuming languages are wanted for both host and build.', location=node)
        success = self.add_languages(langs, False, MachineChoice.BUILD)
        success &= self.add_languages(langs, required, MachineChoice.HOST)
        return success