diff options
author | Luca Bruno <lucabru@src.gnome.org> | 2011-04-02 10:09:10 +0200 |
---|---|---|
committer | Jürg Billeter <j@bitron.ch> | 2011-04-02 15:46:10 +0200 |
commit | a90b9d2e467ab77ccef7bcd6c26f310cda3b6f2f (patch) | |
tree | 490152135452a9592911c1a19d84a68eddf17c3f /tests | |
parent | c46029863c2c87b6c4feed662fd3f1ed79b14501 (diff) | |
download | vala-a90b9d2e467ab77ccef7bcd6c26f310cda3b6f2f.tar.gz |
codegen: Fix look-up of next closure block
Methods that are not closures don't capture parent blocks.
Fixes bug 646345.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/Makefile.am | 1 | ||||
-rw-r--r-- | tests/methods/bug646345.vala | 16 |
2 files changed, 17 insertions, 0 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am index 411f348ab..b643d8a4e 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -34,6 +34,7 @@ TESTS = \ methods/bug599892.vala \ methods/bug613483.vala \ methods/bug620673.vala \ + methods/bug646345.vala \ control-flow/break.vala \ control-flow/expressions-conditional.vala \ control-flow/for.vala \ diff --git a/tests/methods/bug646345.vala b/tests/methods/bug646345.vala new file mode 100644 index 000000000..29b84e41b --- /dev/null +++ b/tests/methods/bug646345.vala @@ -0,0 +1,16 @@ +void main() { + var outervar = "outerfoo"; + SourceFunc firstfunc = () => { + outervar = "outerbar"; + return false; + }; + + SourceFunc secondfunc = () => { + var innervar = "innerfoo"; + SourceFunc innerfunc = () => { + innervar = "innerbar"; + return false; + }; + return false; + }; +} |