def _add_global_arguments(self, node: mparser.FunctionNode, argsdict: T.Dict[(str, T.List[str])], args: T.List[str], kwargs: 'kwargs.FuncAddProjectArgs') -> None:
    if self.is_subproject():
        msg = f'''Function '{node.func_name}' cannot be used in subprojects because there is no way to make that reliable.
Please only call this if is_subproject() returns false. Alternatively, define a variable that
contains your language-specific arguments and add it to the appropriate *_args kwarg in each target.'''
        raise InvalidCode(msg)
    frozen = (self.project_args_frozen or self.global_args_frozen)
    self._add_arguments(node, argsdict, frozen, args, kwargs)
def _add_global_arguments(self, node: mparser.FunctionNode, argsdict: T.Dict[(str, T.List[str])], args: T.List[str], kwargs: 'kwargs.FuncAddProjectArgs') -> None:
    if self.is_subproject():
        msg = f'Function '{node.func_name}' cannot be used in subprojects because there is no way to make that reliable.
Please only call this if is_subproject() returns false. Alternatively, define a variable that
contains your language-specific arguments and add it to the appropriate *_args kwarg in each target.'
        raise InvalidCode(msg)
    frozen = (self.project_args_frozen or self.global_args_frozen)
    self._add_arguments(node, argsdict, frozen, args, kwargs)