From: Juerg Billeter Date: Sat, 12 Jan 2008 13:16:09 +0000 (+0000) Subject: use separate temp_vars list for lambda expressions to prevent mixup in the X-Git-Tag: VALA_0_1_6~33 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ec636ab6ee6a325ecc12666dcc1160de0bf53e1d;p=platform%2Fupstream%2Fvala.git use separate temp_vars list for lambda expressions to prevent mixup in the 2008-01-12 Juerg Billeter * gobject/valaccodegenerator.vala: use separate temp_vars list for lambda expressions to prevent mixup in the C code svn path=/trunk/; revision=834 --- diff --git a/ChangeLog b/ChangeLog index 6e0e608..c13e5ee 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2008-01-12 Jürg Billeter + * gobject/valaccodegenerator.vala: use separate temp_vars list for + lambda expressions to prevent mixup in the C code + +2008-01-12 Jürg Billeter + * vala/valasemanticanalyzer.vala: restore current_return_type after processing lambda expressions, fixes bug 501586 diff --git a/gobject/valaccodegenerator.vala b/gobject/valaccodegenerator.vala index 82c0b9a..041a110 100644 --- a/gobject/valaccodegenerator.vala +++ b/gobject/valaccodegenerator.vala @@ -2670,8 +2670,16 @@ public class Vala.CCodeGenerator : CodeGenerator { } public override void visit_lambda_expression (LambdaExpression! l) { + var old_temp_vars = temp_vars; + var old_temp_ref_vars = temp_ref_vars; + temp_vars = new ArrayList (); + temp_ref_vars = new ArrayList (); + l.accept_children (this); + temp_vars = old_temp_vars; + temp_ref_vars = old_temp_ref_vars; + l.ccodenode = new CCodeIdentifier (l.method.get_cname ()); }