+2009-01-16 Jürg Billeter <j@bitron.ch>
+
+ * gobject/valaccodestructmodule.vala:
+ * gobject/valagobjectmodule.vala:
+
+ Fix typedef generation for private types, patch by Yu Feng,
+ fixes bug 567237
+
2009-01-16 Jürg Billeter <j@bitron.ch>
* gobject/valaccodebasemodule.vala:
def_frag = source_type_definition;
}
- if (st.source_reference.file.cycle == null) {
+ if (st.access == SymbolAccessibility.PRIVATE
+ || st.source_reference.file.cycle == null) {
+ // no file dependency cycle for private symbols
decl_frag.append (new CCodeTypeDefinition ("struct _%s".printf (st.get_cname ()), new CCodeVariableDeclarator (st.get_cname ())));
}
}
- if (cl.source_reference.file.cycle == null) {
+ if (cl.access == SymbolAccessibility.PRIVATE
+ || cl.source_reference.file.cycle == null) {
+ // no file dependency cycle for private symbols
decl_frag.append (new CCodeTypeDefinition ("struct %s".printf (instance_struct.name), new CCodeVariableDeclarator (cl.get_cname ())));
}
}
if (is_gtypeinstance) {
- if (cl.source_reference.file.cycle == null) {
+ if (cl.access == SymbolAccessibility.PRIVATE
+ || cl.source_reference.file.cycle == null) {
+ // no file dependency cycle for private symbols
decl_frag.append (new CCodeTypeDefinition ("struct %s".printf (type_struct.name), new CCodeVariableDeclarator ("%sClass".printf (cl.get_cname ()))));
}
decl_frag.append (new CCodeTypeDefinition ("struct %s".printf (instance_priv_struct.name), new CCodeVariableDeclarator ("%sPrivate".printf (cl.get_cname ()))));