Commits

Anonymous committed ca3f09c

Update to 1.033 front end

  • Participants
  • Parent commits 37f27c7

Comments (0)

Files changed (4)

 	{
 	    if (sc->scopesym && sc->scopesym->isDeprecated())
 		return;
+		// If inside a StorageClassDeclaration that is deprecated
+ 	    if (sc->stc & STCdeprecated)
+ 		return;
 	}
 
 	error(loc, "is deprecated");
 
     copyright = "Copyright (c) 1999-2008 by Digital Mars";
     written = "written by Walter Bright";
-    version = "v1.032";
+    version = "v1.033";
     global.structalign = 8;
 
     memset(&params, 0, sizeof(Param));
 	vfprintf(stdmsg, format, ap);
 	fprintf(stdmsg, "\n");
 	fflush(stdmsg);
+	halt();
     }
     global.errors++;
 }
 	//return getProperty(e->loc, ident);
 	return Type::dotExp(sc, e, ident);
     }
+    if (!s->isFuncDeclaration())	// because of overloading
     s->checkDeprecated(e->loc, sc);
     s = s->toAlias();
 
 	    return Type::dotExp(sc, e, ident);
 	}
     }
+    if (!s->isFuncDeclaration())	// because of overloading
     s->checkDeprecated(e->loc, sc);
     s = s->toAlias();
     v = s->isVarDeclaration();
 	{
 	    if (!sc)
 		goto Lnomatch;
+		
+		/* Need a loc to go with the semantic routine.
++ 	     */
+ 	    Loc loc;
+ 	    if (parameters->dim)
+ 	    {
+ 		TemplateParameter *tp = (TemplateParameter *)parameters->data[0];
+ 		loc = tp->loc;
+ 	    }
+
 	    /* BUG: what if tparam is a template instance, that
 	     * has as an argument another Tident?
 	     */
-	    tparam = tparam->semantic(0, sc);
+	    tparam = tparam->semantic(loc, sc);
 	    assert(tparam->ty != Tident);
 	    return deduceType(sc, tparam, parameters, dedtypes);
 	}