[vala] Do not declare construct-only properties in header files



commit c3ca637a8c92a24e9baa2e7fa424ec2a985abe09
Author: Jürg Billeter <j bitron ch>
Date:   Sun May 24 11:42:11 2009 +0200

    Do not declare construct-only properties in header files
    
    Fixes bug 580386.
---
 codegen/valaccodebasemodule.vala |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/codegen/valaccodebasemodule.vala b/codegen/valaccodebasemodule.vala
index c5987eb..4a41c66 100644
--- a/codegen/valaccodebasemodule.vala
+++ b/codegen/valaccodebasemodule.vala
@@ -1214,12 +1214,15 @@ internal class Vala.CCodeBaseModule : CCodeModule {
 		    || (prop.base_property == null && prop.base_interface_property == null)) {
 			generate_property_accessor_declaration (acc, source_declarations);
 
-			if (!prop.is_internal_symbol ()
-			    && (acc.access == SymbolAccessibility.PUBLIC
-				|| acc.access == SymbolAccessibility.PROTECTED)) {
-				generate_property_accessor_declaration (acc, header_declarations);
+			// do not declare construct-only properties in header files
+			if (acc.readable || acc.writable) {
+				if (!prop.is_internal_symbol ()
+				    && (acc.access == SymbolAccessibility.PUBLIC
+					|| acc.access == SymbolAccessibility.PROTECTED)) {
+					generate_property_accessor_declaration (acc, header_declarations);
+				}
+				generate_property_accessor_declaration (acc, internal_header_declarations);
 			}
-			generate_property_accessor_declaration (acc, internal_header_declarations);
 		}
 
 		var this_type = new ObjectType (t);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]