diff options
author | Daniel Mensinger <daniel@mensinger-ka.de> | 2019-02-22 11:30:29 +0100 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2019-02-26 18:40:45 +0200 |
commit | 4bf1a352cc3626873ed69c1f5b69c34730cdf2b2 (patch) | |
tree | ab02d8186e2bcba3d8862c84ea4bafdbd05e1c41 | |
parent | 8c6d6393f22cdc519e20f971b3e147642338991a (diff) | |
download | meson-4bf1a352cc3626873ed69c1f5b69c34730cdf2b2.zip meson-4bf1a352cc3626873ed69c1f5b69c34730cdf2b2.tar.gz meson-4bf1a352cc3626873ed69c1f5b69c34730cdf2b2.tar.bz2 |
mconf: Fixed crash for variables in targets (closes #4960)
-rw-r--r-- | mesonbuild/ast/introspection.py | 3 | ||||
-rw-r--r-- | test cases/unit/53 introspect buildoptions/main.c | 6 | ||||
-rw-r--r-- | test cases/unit/53 introspect buildoptions/meson.build | 5 |
3 files changed, 13 insertions, 1 deletions
diff --git a/mesonbuild/ast/introspection.py b/mesonbuild/ast/introspection.py index 0917015..f0ff43f 100644 --- a/mesonbuild/ast/introspection.py +++ b/mesonbuild/ast/introspection.py @@ -142,10 +142,11 @@ class IntrospectionInterpreter(AstInterpreter): }] def build_target(self, node, args, kwargs, targetclass): + args = self.flatten_args(args) if not args: return kwargs = self.flatten_kwargs(kwargs, True) - name = self.flatten_args(args)[0] + name = args[0] srcqueue = [node] if 'sources' in kwargs: srcqueue += kwargs['sources'] diff --git a/test cases/unit/53 introspect buildoptions/main.c b/test cases/unit/53 introspect buildoptions/main.c new file mode 100644 index 0000000..ef99ae6 --- /dev/null +++ b/test cases/unit/53 introspect buildoptions/main.c @@ -0,0 +1,6 @@ +#include <stdio.h> + +int main() { + printf("Hello World"); + return 0; +} diff --git a/test cases/unit/53 introspect buildoptions/meson.build b/test cases/unit/53 introspect buildoptions/meson.build index e94ef61..8052b5f 100644 --- a/test cases/unit/53 introspect buildoptions/meson.build +++ b/test cases/unit/53 introspect buildoptions/meson.build @@ -2,6 +2,11 @@ project('introspect buildargs', ['c'], default_options: ['c_std=c11', 'cpp_std=c subA = subproject('projectA') +target_name = 'MAIN' +target_src = ['main.c'] + +executable(target_name, target_src) + r = run_command(find_program('c_compiler.py')) if r.returncode() != 0 error('FAILED') |