diff options
author | Luca Bruno <lethalman88@gmail.com> | 2010-09-09 15:42:59 +0200 |
---|---|---|
committer | Jürg Billeter <j@bitron.ch> | 2010-09-09 15:45:22 +0200 |
commit | 994935e2af012d64fe053709fccfbbf76c090a54 (patch) | |
tree | bcfeb3274321fe30f961c8fc4fed0aee1a16cbdf | |
parent | 8166abea81a4767977dfa7340b5f6bcf288c1f04 (diff) | |
download | vala-994935e2af012d64fe053709fccfbbf76c090a54.tar.gz |
GObject: Add _vala_ suffix to get/set_property to avoid name clashes
Fixes bug 624594.
-rw-r--r-- | codegen/valadbusclientmodule.vala | 8 | ||||
-rw-r--r-- | codegen/valagobjectmodule.vala | 8 | ||||
-rw-r--r-- | tests/Makefile.am | 1 | ||||
-rw-r--r-- | tests/objects/bug624594.vala | 6 |
4 files changed, 15 insertions, 8 deletions
diff --git a/codegen/valadbusclientmodule.vala b/codegen/valadbusclientmodule.vala index 360d3c9f4..d8aca219e 100644 --- a/codegen/valadbusclientmodule.vala +++ b/codegen/valadbusclientmodule.vala @@ -1256,8 +1256,8 @@ public class Vala.DBusClientModule : DBusModule { gobject_class.add_argument (new CCodeIdentifier ("klass")); proxy_class_init.block.add_statement (new CCodeExpressionStatement (new CCodeAssignment (new CCodeMemberAccess.pointer (gobject_class, "constructor"), new CCodeIdentifier (lower_cname + "_construct")))); proxy_class_init.block.add_statement (new CCodeExpressionStatement (new CCodeAssignment (new CCodeMemberAccess.pointer (gobject_class, "dispose"), new CCodeIdentifier (lower_cname + "_dispose")))); - proxy_class_init.block.add_statement (new CCodeExpressionStatement (new CCodeAssignment (new CCodeMemberAccess.pointer (gobject_class, "get_property"), new CCodeIdentifier (lower_cname + "_get_property")))); - proxy_class_init.block.add_statement (new CCodeExpressionStatement (new CCodeAssignment (new CCodeMemberAccess.pointer (gobject_class, "set_property"), new CCodeIdentifier (lower_cname + "_set_property")))); + proxy_class_init.block.add_statement (new CCodeExpressionStatement (new CCodeAssignment (new CCodeMemberAccess.pointer (gobject_class, "get_property"), new CCodeIdentifier ("_vala_%s_get_property".printf (lower_cname))))); + proxy_class_init.block.add_statement (new CCodeExpressionStatement (new CCodeAssignment (new CCodeMemberAccess.pointer (gobject_class, "set_property"), new CCodeIdentifier ("_vala_%s_set_property".printf (lower_cname))))); cfile.add_function (proxy_class_init); prop_enum = new CCodeEnum (); @@ -1277,7 +1277,7 @@ public class Vala.DBusClientModule : DBusModule { // dbus proxy get/set_property stubs // TODO add actual implementation - var get_prop = new CCodeFunction ("%s_get_property".printf (lower_cname), "void"); + var get_prop = new CCodeFunction ("_vala_%s_get_property".printf (lower_cname), "void"); get_prop.modifiers = CCodeModifiers.STATIC; get_prop.add_parameter (new CCodeFormalParameter ("object", "GObject *")); get_prop.add_parameter (new CCodeFormalParameter ("property_id", "guint")); @@ -1287,7 +1287,7 @@ public class Vala.DBusClientModule : DBusModule { get_prop.block = new CCodeBlock (); cfile.add_function (get_prop); - var set_prop = new CCodeFunction ("%s_set_property".printf (lower_cname), "void"); + var set_prop = new CCodeFunction ("_vala_%s_set_property".printf (lower_cname), "void"); set_prop.modifiers = CCodeModifiers.STATIC; set_prop.add_parameter (new CCodeFormalParameter ("object", "GObject *")); set_prop.add_parameter (new CCodeFormalParameter ("property_id", "guint")); diff --git a/codegen/valagobjectmodule.vala b/codegen/valagobjectmodule.vala index c2be061fb..7923fd3b5 100644 --- a/codegen/valagobjectmodule.vala +++ b/codegen/valagobjectmodule.vala @@ -51,10 +51,10 @@ public class Vala.GObjectModule : GTypeModule { var ccall = new CCodeFunctionCall (new CCodeIdentifier ("G_OBJECT_CLASS")); ccall.add_argument (new CCodeIdentifier ("klass")); if (class_has_readable_properties (cl) || cl.get_type_parameters ().size > 0) { - init_block.add_statement (new CCodeExpressionStatement (new CCodeAssignment (new CCodeMemberAccess.pointer (ccall, "get_property"), new CCodeIdentifier ("%s_get_property".printf (cl.get_lower_case_cname (null)))))); + init_block.add_statement (new CCodeExpressionStatement (new CCodeAssignment (new CCodeMemberAccess.pointer (ccall, "get_property"), new CCodeIdentifier ("_vala_%s_get_property".printf (cl.get_lower_case_cname (null)))))); } if (class_has_writable_properties (cl) || cl.get_type_parameters ().size > 0) { - init_block.add_statement (new CCodeExpressionStatement (new CCodeAssignment (new CCodeMemberAccess.pointer (ccall, "set_property"), new CCodeIdentifier ("%s_set_property".printf (cl.get_lower_case_cname (null)))))); + init_block.add_statement (new CCodeExpressionStatement (new CCodeAssignment (new CCodeMemberAccess.pointer (ccall, "set_property"), new CCodeIdentifier ("_vala_%s_set_property".printf (cl.get_lower_case_cname (null)))))); } /* set constructor */ @@ -174,7 +174,7 @@ public class Vala.GObjectModule : GTypeModule { } private void add_get_property_function (Class cl) { - var get_prop = new CCodeFunction ("%s_get_property".printf (cl.get_lower_case_cname (null)), "void"); + var get_prop = new CCodeFunction ("_vala_%s_get_property".printf (cl.get_lower_case_cname (null)), "void"); get_prop.modifiers = CCodeModifiers.STATIC; get_prop.add_parameter (new CCodeFormalParameter ("object", "GObject *")); get_prop.add_parameter (new CCodeFormalParameter ("property_id", "guint")); @@ -282,7 +282,7 @@ public class Vala.GObjectModule : GTypeModule { } private void add_set_property_function (Class cl) { - var set_prop = new CCodeFunction ("%s_set_property".printf (cl.get_lower_case_cname (null)), "void"); + var set_prop = new CCodeFunction ("_vala_%s_set_property".printf (cl.get_lower_case_cname (null)), "void"); set_prop.modifiers = CCodeModifiers.STATIC; set_prop.add_parameter (new CCodeFormalParameter ("object", "GObject *")); set_prop.add_parameter (new CCodeFormalParameter ("property_id", "guint")); diff --git a/tests/Makefile.am b/tests/Makefile.am index b24ea23ec..08bf29335 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -70,6 +70,7 @@ TESTS = \ objects/bug597161.vala \ objects/bug613486.vala \ objects/bug620706.vala \ + objects/bug624594.vala \ errors/errors.vala \ errors/bug567181.vala \ errors/bug579101.vala \ diff --git a/tests/objects/bug624594.vala b/tests/objects/bug624594.vala new file mode 100644 index 000000000..4895004bf --- /dev/null +++ b/tests/objects/bug624594.vala @@ -0,0 +1,6 @@ +class Foo : Object { + public int property { get; set; } +} + +void main () { +} |