changeset 30:93810d5d169d

Automated merge with http://hg.dsource.org/projects/ddmd/
author Robert Clipsham <robert@octarineparrot.com>
date Tue, 13 Apr 2010 16:15:13 +0100
parents c369e9924151 (current diff) 9fe59705c82d (diff)
children 9364afc02cf5
files
diffstat 2 files changed, 15 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/commands.linux.txt	Tue Apr 13 15:36:12 2010 +0400
+++ b/commands.linux.txt	Tue Apr 13 16:15:13 2010 +0100
@@ -1,6 +1,5 @@
 -gc
 -debug
--release
 -version=Bug3602
 -version=Bug4054
 -version=Bug4059
--- a/dmd/Module.d	Tue Apr 13 15:36:12 2010 +0400
+++ b/dmd/Module.d	Tue Apr 13 16:15:13 2010 +0100
@@ -1187,9 +1187,22 @@
 			docfile.remove();
 	}
 
-    void addDeferredSemantic(Dsymbol s)
+	/*******************************************
+	 * Can't run semantic on s now, try again later.
+	 */
+	void addDeferredSemantic(Dsymbol s)
 	{
-		assert(false);
+	    // Don't add it if it is already there
+	    for (int i = 0; i < deferred.dim; i++)
+	    {
+		Dsymbol sd = cast(Dsymbol)deferred.data[i];
+
+		if (sd == s)
+		    return;
+	    }
+
+	    //printf("Module::addDeferredSemantic('%s')\n", s->toChars());
+	    deferred.push(cast(void*)s);
 	}
 	
 	/******************************************