[vala/emit-let: 1/2] codegen: Drop unnecessary comma expressions in member access
- From: Luca Bruno <lucabru src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [vala/emit-let: 1/2] codegen: Drop unnecessary comma expressions in member access
- Date: Thu, 17 Feb 2011 11:24:45 +0000 (UTC)
commit cb3aacc29e7daeb47aedb4b69d317f2a58f1cc7c
Author: Luca Bruno <lucabru src gnome org>
Date: Thu Feb 17 11:39:04 2011 +0100
codegen: Drop unnecessary comma expressions in member access
codegen/valaccodememberaccessmodule.vala | 15 ++++-----------
1 files changed, 4 insertions(+), 11 deletions(-)
---
diff --git a/codegen/valaccodememberaccessmodule.vala b/codegen/valaccodememberaccessmodule.vala
index 6b2918a..da950a9 100644
--- a/codegen/valaccodememberaccessmodule.vala
+++ b/codegen/valaccodememberaccessmodule.vala
@@ -229,15 +229,10 @@ public abstract class Vala.CCodeMemberAccessModule : CCodeControlFlowModule {
pub_inst = new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, pub_inst);
} else {
// if instance is e.g. a function call, we can't take the address of the expression
- // (tmp = expr, &tmp)
- var ccomma = new CCodeCommaExpression ();
-
var temp_var = get_temp_variable (expr.inner.target_type, true, null, false);
emit_temp_var (temp_var);
- ccomma.append_expression (new CCodeAssignment (get_variable_cexpression (temp_var.name), pub_inst));
- ccomma.append_expression (new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, get_variable_cexpression (temp_var.name)));
-
- pub_inst = ccomma;
+ ccode.add_assignment (get_variable_cexpression (temp_var.name), pub_inst);
+ pub_inst = new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, get_variable_cexpression (temp_var.name));
}
}
@@ -298,15 +293,13 @@ public abstract class Vala.CCodeMemberAccessModule : CCodeControlFlowModule {
}
}
- var ccomma = new CCodeCommaExpression ();
var temp_var = get_temp_variable (expr.value_type);
var ctemp = get_variable_cexpression (temp_var.name);
emit_temp_var (temp_var);
ccall.add_argument (new CCodeUnaryExpression (CCodeUnaryOperator.ADDRESS_OF, ctemp));
ccall.add_argument (new CCodeConstant ("NULL"));
- ccomma.append_expression (ccall);
- ccomma.append_expression (ctemp);
- set_cvalue (expr, ccomma);
+ ccode.add_expression (ccall);
+ set_cvalue (expr, ctemp);
}
} else if (expr.symbol_reference is LocalVariable) {
var local = (LocalVariable) expr.symbol_reference;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]