|
|
|
@ -234,7 +234,7 @@ def get_error_location_string(fname: str, lineno: str) -> str: |
|
|
|
|
def _log_error(severity: str, *rargs: T.Union[str, AnsiDecorator], |
|
|
|
|
once: bool = False, **kwargs: T.Any) -> None: |
|
|
|
|
from .environment import build_filename |
|
|
|
|
from .mesonlib import MesonException |
|
|
|
|
from .mesonlib import MesonException, relpath |
|
|
|
|
|
|
|
|
|
# The typing requirements here are non-obvious. Lists are invariant, |
|
|
|
|
# therefore T.List[A] and T.List[T.Union[A, B]] are not able to be joined |
|
|
|
@ -251,7 +251,7 @@ def _log_error(severity: str, *rargs: T.Union[str, AnsiDecorator], |
|
|
|
|
|
|
|
|
|
location = kwargs.pop('location', None) |
|
|
|
|
if location is not None: |
|
|
|
|
location_file = location.subdir |
|
|
|
|
location_file = relpath(location.subdir, os.getcwd()) |
|
|
|
|
location_str = get_error_location_string(location_file, location.lineno) |
|
|
|
|
# Unions are frankly awful, and we have to T.cast here to get mypy |
|
|
|
|
# to understand that the list concatenation is safe |
|
|
|
|