]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
codewriter: Wrap AddressofExpression and PointerIndirection in parens
authorRico Tzschichholz <ricotz@ubuntu.com>
Mon, 21 Dec 2020 12:52:54 +0000 (13:52 +0100)
committerRico Tzschichholz <ricotz@ubuntu.com>
Mon, 21 Dec 2020 12:52:54 +0000 (13:52 +0100)
vala/valaaddressofexpression.vala
vala/valacodewriter.vala

index 0f3233422e6b95b795b1b5934faaace17db4a85e..d271d0cc469a9228cbbcbc7513bff345c96aab7a 100644 (file)
@@ -65,7 +65,7 @@ public class Vala.AddressofExpression : Expression {
        }
 
        public override string to_string () {
-               return "&" + inner.to_string ();
+               return "(&%s)".printf (inner.to_string ());
        }
 
        public override void replace_expression (Expression old_node, Expression new_node) {
index f555b7a020630eb9310af08611647073bc8e04ce..cc2196347a231e8879841d0b32082fa9add129d3 100644 (file)
@@ -1424,13 +1424,15 @@ public class Vala.CodeWriter : CodeVisitor {
        }
 
        public override void visit_pointer_indirection (PointerIndirection expr) {
-               write_string ("*");
+               write_string ("(*");
                expr.inner.accept (this);
+               write_string (")");
        }
 
        public override void visit_addressof_expression (AddressofExpression expr) {
-               write_string ("&");
+               write_string ("(&");
                expr.inner.accept (this);
+               write_string (")");
        }
 
        public override void visit_reference_transfer_expression (ReferenceTransferExpression expr) {