summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRico Tzschichholz <ricotz@ubuntu.com>2021-04-01 15:33:43 +0200
committerRico Tzschichholz <ricotz@ubuntu.com>2021-04-01 15:57:00 +0200
commit5aed64231cf86c7346442ebffefdea7903ccad99 (patch)
tree7f887bc6162377cbd23d143756737c130009f349
parente7a099f7b02f9ec8432de622e0e840d557fbb8ac (diff)
downloadvala-5aed64231cf86c7346442ebffefdea7903ccad99.tar.gz
codegen: Improve handling of ellipsis parameter in get_ccode_name()
-rw-r--r--codegen/valaccodeattribute.vala13
1 files changed, 12 insertions, 1 deletions
diff --git a/codegen/valaccodeattribute.vala b/codegen/valaccodeattribute.vala
index f945540ab..052001aed 100644
--- a/codegen/valaccodeattribute.vala
+++ b/codegen/valaccodeattribute.vala
@@ -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);