diff options
author | Jürg Billeter <j@bitron.ch> | 2008-11-30 08:34:15 +0000 |
---|---|---|
committer | Jürg Billeter <juergbi@src.gnome.org> | 2008-11-30 08:34:15 +0000 |
commit | 1c44feaa9222d1680dedb760921ba415874e4077 (patch) | |
tree | a894b844ed050b5a3cd3de39b2ad115a094694c2 | |
parent | 1161589c702601e6561e4b3650eac0b5a7990c59 (diff) | |
download | vala-1c44feaa9222d1680dedb760921ba415874e4077.tar.gz |
Fix generated parentheses
2008-11-30 Jürg Billeter <j@bitron.ch>
* vala/valaforeachstatement.vala:
* ccode/valaccodebinaryexpression.vala:
* ccode/valaccodecastexpression.vala:
* ccode/valaccodeelementaccess.vala:
* ccode/valaccodeexpression.vala:
* ccode/valaccodememberaccess.vala:
* ccode/valaccodeunaryexpression.vala:
Fix generated parentheses
svn path=/trunk/; revision=2091
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | ccode/valaccodebinaryexpression.vala | 10 | ||||
-rw-r--r-- | ccode/valaccodecastexpression.vala | 10 | ||||
-rw-r--r-- | ccode/valaccodeelementaccess.vala | 4 | ||||
-rw-r--r-- | ccode/valaccodeexpression.vala | 5 | ||||
-rw-r--r-- | ccode/valaccodememberaccess.vala | 4 | ||||
-rw-r--r-- | ccode/valaccodeunaryexpression.vala | 12 | ||||
-rw-r--r-- | vala/valaforeachstatement.vala | 6 |
8 files changed, 46 insertions, 17 deletions
@@ -1,5 +1,17 @@ 2008-11-30 Jürg Billeter <j@bitron.ch> + * vala/valaforeachstatement.vala: + * ccode/valaccodebinaryexpression.vala: + * ccode/valaccodecastexpression.vala: + * ccode/valaccodeelementaccess.vala: + * ccode/valaccodeexpression.vala: + * ccode/valaccodememberaccess.vala: + * ccode/valaccodeunaryexpression.vala: + + Fix generated parentheses + +2008-11-30 Jürg Billeter <j@bitron.ch> + * vala/valathrowstatement.vala: Check type of error expression in throw statements diff --git a/ccode/valaccodebinaryexpression.vala b/ccode/valaccodebinaryexpression.vala index aaeefb3f7..047b55c41 100644 --- a/ccode/valaccodebinaryexpression.vala +++ b/ccode/valaccodebinaryexpression.vala @@ -48,7 +48,7 @@ public class Vala.CCodeBinaryExpression : CCodeExpression { } public override void write (CCodeWriter writer) { - left.write (writer); + left.write_inner (writer); writer.write_string (" "); if (operator == CCodeBinaryOperator.PLUS) { @@ -91,7 +91,13 @@ public class Vala.CCodeBinaryExpression : CCodeExpression { writer.write_string (" "); - right.write (writer); + right.write_inner (writer); + } + + public override void write_inner (CCodeWriter writer) { + writer.write_string ("("); + this.write (writer); + writer.write_string (")"); } } diff --git a/ccode/valaccodecastexpression.vala b/ccode/valaccodecastexpression.vala index 00dbfcfd1..e53e6c2b6 100644 --- a/ccode/valaccodecastexpression.vala +++ b/ccode/valaccodecastexpression.vala @@ -42,12 +42,16 @@ public class Vala.CCodeCastExpression : CCodeExpression { } public override void write (CCodeWriter writer) { - writer.write_string ("(("); + writer.write_string ("("); writer.write_string (type_name); writer.write_string (") "); + inner.write_inner (writer); + } + + public override void write_inner (CCodeWriter writer) { writer.write_string ("("); - inner.write (writer); - writer.write_string ("))"); + this.write (writer); + writer.write_string (")"); } } diff --git a/ccode/valaccodeelementaccess.vala b/ccode/valaccodeelementaccess.vala index b176ea326..dc62485ba 100644 --- a/ccode/valaccodeelementaccess.vala +++ b/ccode/valaccodeelementaccess.vala @@ -1,7 +1,7 @@ /* valaccodememberaccess.vala * * Copyright (C) 2006 Raffaele Sandrini - * Copyright (C) 2006 Jürg Billeter + * Copyright (C) 2006-2008 Jürg Billeter * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -45,7 +45,7 @@ public class Vala.CCodeElementAccess : CCodeExpression { } public override void write (CCodeWriter writer) { - container.write (writer); + container.write_inner (writer); writer.write_string ("["); index.write (writer); writer.write_string ("]"); diff --git a/ccode/valaccodeexpression.vala b/ccode/valaccodeexpression.vala index b12ced585..420eba7d5 100644 --- a/ccode/valaccodeexpression.vala +++ b/ccode/valaccodeexpression.vala @@ -1,6 +1,6 @@ /* valaccodeexpression.vala * - * Copyright (C) 2006 Jürg Billeter + * Copyright (C) 2006-2008 Jürg Billeter * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -26,4 +26,7 @@ using GLib; * Represents an expression node in the C code tree. */ public abstract class Vala.CCodeExpression : CCodeNode { + public virtual void write_inner (CCodeWriter writer) { + this.write (writer); + } } diff --git a/ccode/valaccodememberaccess.vala b/ccode/valaccodememberaccess.vala index f5f2517f8..2935fc15b 100644 --- a/ccode/valaccodememberaccess.vala +++ b/ccode/valaccodememberaccess.vala @@ -1,6 +1,6 @@ /* valaccodememberaccess.vala * - * Copyright (C) 2006 Jürg Billeter + * Copyright (C) 2006-2008 Jürg Billeter * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -54,7 +54,7 @@ public class Vala.CCodeMemberAccess : CCodeExpression { } public override void write (CCodeWriter writer) { - inner.write (writer); + inner.write_inner (writer); if (is_pointer) { writer.write_string ("->"); } else { diff --git a/ccode/valaccodeunaryexpression.vala b/ccode/valaccodeunaryexpression.vala index 686876fc4..0f33478af 100644 --- a/ccode/valaccodeunaryexpression.vala +++ b/ccode/valaccodeunaryexpression.vala @@ -51,7 +51,7 @@ public class Vala.CCodeUnaryExpression : CCodeExpression { } else if (operator == CCodeUnaryOperator.BITWISE_COMPLEMENT) { writer.write_string ("~"); } else if (operator == CCodeUnaryOperator.POINTER_INDIRECTION) { - writer.write_string ("(*"); + writer.write_string ("*"); } else if (operator == CCodeUnaryOperator.ADDRESS_OF) { writer.write_string ("&"); } else if (operator == CCodeUnaryOperator.PREFIX_INCREMENT) { @@ -60,16 +60,20 @@ public class Vala.CCodeUnaryExpression : CCodeExpression { writer.write_string ("--"); } - inner.write (writer); + inner.write_inner (writer); if (operator == CCodeUnaryOperator.POSTFIX_INCREMENT) { writer.write_string ("++"); } else if (operator == CCodeUnaryOperator.POSTFIX_DECREMENT) { writer.write_string ("--"); - } else if (operator == CCodeUnaryOperator.POINTER_INDIRECTION) { - writer.write_string (")"); } } + + public override void write_inner (CCodeWriter writer) { + writer.write_string ("("); + this.write (writer); + writer.write_string (")"); + } } public enum Vala.CCodeUnaryOperator { diff --git a/vala/valaforeachstatement.vala b/vala/valaforeachstatement.vala index ed2d68092..2aab71221 100644 --- a/vala/valaforeachstatement.vala +++ b/vala/valaforeachstatement.vala @@ -256,11 +256,11 @@ public class Vala.ForeachStatement : Block { var iterator_call = new MethodCall (new MemberAccess (collection, "iterator")); add_statement (new DeclarationStatement (new LocalVariable (iterator_type, "%s_it".printf (variable_name), iterator_call, source_reference), source_reference)); - var next_call = new MethodCall (new MemberAccess (new MemberAccess.simple ("%s_it".printf (variable_name)), "next")); - var loop = new WhileStatement (next_call, body); + var next_call = new MethodCall (new MemberAccess (new MemberAccess.simple ("%s_it".printf (variable_name), source_reference), "next", source_reference), source_reference); + var loop = new WhileStatement (next_call, body, source_reference); add_statement (loop); - var get_call = new MethodCall (new MemberAccess (new MemberAccess.simple ("%s_it".printf (variable_name)), "get")); + var get_call = new MethodCall (new MemberAccess (new MemberAccess.simple ("%s_it".printf (variable_name), source_reference), "get", source_reference), source_reference); body.insert_statement (0, new DeclarationStatement (new LocalVariable (type_reference, variable_name, get_call, source_reference), source_reference)); checked = false; |