]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
codegen: Improve handling of ellipsis parameter in get_ccode_name()
authorRico Tzschichholz <ricotz@ubuntu.com>
Thu, 1 Apr 2021 13:33:43 +0000 (15:33 +0200)
committerRico Tzschichholz <ricotz@ubuntu.com>
Sun, 4 Apr 2021 13:43:21 +0000 (15:43 +0200)
codegen/valaccodeattribute.vala

index b65eb64b4bed309a4f4035dcfebecdaf33be4d26..6e9c3e74c49bff6cf7a1087296100f2f4387d61a 100644 (file)
@@ -771,7 +771,18 @@ public class Vala.CCodeAttribute : AttributeCache {
                                }
                        } else if (sym is Signal) {
                                return Symbol.camel_case_to_lower_case (sym.name).replace ("_", "-");;
-                       } else if (sym is LocalVariable || sym is Parameter) {
+                       } else if (sym is LocalVariable) {
+                               unowned string name = sym.name;
+                               if (CCodeBaseModule.reserved_identifiers.contains (name)) {
+                                       return "_%s_".printf (name);
+                               } else {
+                                       return name;
+                               }
+                       } else if (sym is Parameter) {
+                               unowned Parameter param = (Parameter) sym;
+                               if (param.ellipsis) {
+                                       return "...";
+                               }
                                unowned string name = sym.name;
                                if (CCodeBaseModule.reserved_identifiers.contains (name)) {
                                        return "_%s_".printf (name);