diff options
-rw-r--r-- | interpreter.py | 2 | ||||
-rw-r--r-- | test cases/common/42 string formatting/meson.build | 7 |
2 files changed, 8 insertions, 1 deletions
diff --git a/interpreter.py b/interpreter.py index 18cf518..318f7b3 100644 --- a/interpreter.py +++ b/interpreter.py @@ -1194,7 +1194,7 @@ class Interpreter(): if isinstance(args, nodes.Arguments): args = args.arguments for (i, arg) in enumerate(args): - arg = self.to_native(arg) + arg = self.to_native(self.reduce_single(arg)) if isinstance(arg, bool): # Python boolean is upper case. arg = str(arg).lower() templ = templ.replace('@{}@'.format(i), str(arg)) diff --git a/test cases/common/42 string formatting/meson.build b/test cases/common/42 string formatting/meson.build index 9038ff8..4e7cc1a 100644 --- a/test cases/common/42 string formatting/meson.build +++ b/test cases/common/42 string formatting/meson.build @@ -13,3 +13,10 @@ endif if '@0@'.format(true) != 'true' error('String boolean formatting is broken.') endif + +templ2 = '@0@' +subs2 = '42' + +if templ2.format(subs2) != '42' + error('String formatting with variables is broken.') +endif |