CCodeConstant func_name_constant;
CCodeFunctionCall cinst, cspec;
- func_name = "%s_type".printf (type_param.name.ascii_down ());
- func_name_constant = new CCodeConstant ("\"%s-type\"".printf (type_param.name.ascii_down ()));
+ var name_prefix = type_param.name.down ();
+ var canonical_prefix = name_prefix.replace ("_", "-");
+
+ func_name = "%s_type".printf (name_prefix);
+ func_name_constant = new CCodeConstant ("\"%s-type\"".printf (canonical_prefix));
enum_value = "%s_%s".printf (get_ccode_lower_case_name (cl, null), func_name).ascii_up ();
cinst = new CCodeFunctionCall (new CCodeIdentifier ("g_object_class_install_property"));
cinst.add_argument (ccall);
prop_enum.add_value (new CCodeEnumValue (enum_value));
- func_name = "%s_dup_func".printf (type_param.name.ascii_down ());
- func_name_constant = new CCodeConstant ("\"%s-dup-func\"".printf (type_param.name.ascii_down ()));
+ func_name = "%s_dup_func".printf (name_prefix);
+ func_name_constant = new CCodeConstant ("\"%s-dup-func\"".printf (canonical_prefix));
enum_value = "%s_%s".printf (get_ccode_lower_case_name (cl, null), func_name).ascii_up ();
cinst = new CCodeFunctionCall (new CCodeIdentifier ("g_object_class_install_property"));
cinst.add_argument (ccall);
prop_enum.add_value (new CCodeEnumValue (enum_value));
- func_name = "%s_destroy_func".printf (type_param.name.ascii_down ());
- func_name_constant = new CCodeConstant ("\"%s-destroy-func\"".printf (type_param.name.ascii_down ()));
+ func_name = "%s_destroy_func".printf (name_prefix);
+ func_name_constant = new CCodeConstant ("\"%s-destroy-func\"".printf (canonical_prefix));
enum_value = "%s_%s".printf (get_ccode_lower_case_name (cl, null), func_name).ascii_up ();
cinst = new CCodeFunctionCall (new CCodeIdentifier ("g_object_class_install_property"));
cinst.add_argument (ccall);