Index: src/SynTree/Declaration.h
===================================================================
--- src/SynTree/Declaration.h	(revision 17129659db6e6e36c5f0d4f584aece6ea825536a)
+++ src/SynTree/Declaration.h	(revision bd405fa5a47462483423c39d874053d41ec0a699)
@@ -211,7 +211,11 @@
 		TypeDecl::Kind kind;
 		bool isComplete;
+		
 		Data() : kind( (TypeDecl::Kind)-1 ), isComplete( false ) {}
 		Data( TypeDecl * typeDecl ) : Data( typeDecl->get_kind(), typeDecl->isComplete() ) {}
 		Data( Kind kind, bool isComplete ) : kind( kind ), isComplete( isComplete ) {}
+		Data( const Data& d1, const Data& d2 ) 
+		: kind( d1.kind ), isComplete ( d1.isComplete || d2.isComplete ) {}
+
 		bool operator==(const Data & other) const { return kind == other.kind && isComplete == other.isComplete; }
 		bool operator!=(const Data & other) const { return !(*this == other);}
