[Issue 3469] ICE(func.c): Regression. Calling non-template function	as a template, from another module
    d-bugmail at puremagic.com 
    d-bugmail at puremagic.com
       
    Tue Nov  3 03:45:49 PST 2009
    
    
  
http://d.puremagic.com/issues/show_bug.cgi?id=3469
Don <clugdbug at yahoo.com.au> changed:
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |patch
--- Comment #2 from Don <clugdbug at yahoo.com.au> 2009-11-03 03:45:48 PST ---
PATCH against DMD2.036. Passes the DMD test suite + phobos unittests.
Expression.c, DotTemplateInstanceExp::semantic(). Ensure it's a template BEFORE
running the semantic pass.
Index: expression.c
===================================================================
--- expression.c    (revision 234)
+++ expression.c    (working copy)
@@ -6082,6 +6082,14 @@
     goto Lerr;
     }
     s = s2;
+    
+    td = s->toAlias()->isTemplateDeclaration();
+    if (!td)
+    {
+    error("%s is not a template", id->toChars());
+    goto Lerr;
+    }
+    
     s->semantic(sc);
     s = s->toAlias();
     td = s->isTemplateDeclaration();
-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
    
    
More information about the Digitalmars-d-bugs
mailing list