summaryrefslogtreecommitdiff
path: root/codegen/valaccodebasemodule.vala
diff options
context:
space:
mode:
authorLuca Bruno <lucabru@src.gnome.org>2014-02-01 18:37:50 +0100
committerRico Tzschichholz <ricotz@ubuntu.com>2019-03-11 13:52:38 +0100
commit58f42eea9f7fe918c8229771e06f324f8d85359f (patch)
treeb368795d2fd2ab0705234377861cd375492c2c8b /codegen/valaccodebasemodule.vala
parent4cb9fcc5ad7090c924a0d657312ab96a55d279ea (diff)
downloadvala-58f42eea9f7fe918c8229771e06f324f8d85359f.tar.gz
Move postfix transformation from the codegen to the transformer
Diffstat (limited to 'codegen/valaccodebasemodule.vala')
-rw-r--r--codegen/valaccodebasemodule.vala41
1 files changed, 0 insertions, 41 deletions
diff --git a/codegen/valaccodebasemodule.vala b/codegen/valaccodebasemodule.vala
index 81c98f413..19b6435fc 100644
--- a/codegen/valaccodebasemodule.vala
+++ b/codegen/valaccodebasemodule.vala
@@ -4280,47 +4280,6 @@ public abstract class Vala.CCodeBaseModule : CodeGenerator {
set_cvalue (expr, generate_instance_cast (get_this_cexpression (), expr.value_type.data_type));
}
- public override void visit_postfix_expression (PostfixExpression expr) {
- MemberAccess ma = find_property_access (expr.inner);
- if (ma != null) {
- // property postfix expression
- var prop = (Property) ma.symbol_reference;
-
- // increment/decrement property
- var op = expr.increment ? CCodeBinaryOperator.PLUS : CCodeBinaryOperator.MINUS;
- var cexpr = new CCodeBinaryExpression (op, get_cvalue (expr.inner), new CCodeConstant ("1"));
- store_property (prop, ma.inner, new GLibValue (expr.value_type, cexpr));
-
- // return previous value
- expr.target_value = expr.inner.target_value;
- return;
- }
-
- // assign current value to temp variable
- var temp_value = store_temp_value (expr.inner.target_value, expr);
-
- // increment/decrement variable
- var op = expr.increment ? CCodeBinaryOperator.PLUS : CCodeBinaryOperator.MINUS;
- var cexpr = new CCodeBinaryExpression (op, get_cvalue_ (temp_value), new CCodeConstant ("1"));
- ccode.add_assignment (get_cvalue (expr.inner), cexpr);
-
- // return previous value
- expr.target_value = temp_value;
- }
-
- private MemberAccess? find_property_access (Expression expr) {
- if (!(expr is MemberAccess)) {
- return null;
- }
-
- var ma = (MemberAccess) expr;
- if (ma.symbol_reference is Property) {
- return ma;
- }
-
- return null;
- }
-
bool is_limited_generic_type (GenericType type) {
var cl = type.type_parameter.parent_symbol as Class;
var st = type.type_parameter.parent_symbol as Struct;