Nicolas Cannasse 12 lat temu
rodzic
commit
d163e755d6
1 zmienionych plików z 11 dodań i 0 usunięć
  1. 11 0
      hxsl/Checker.hx

+ 11 - 0
hxsl/Checker.hx

@@ -85,6 +85,12 @@ class Checker {
 				if( a.qualifiers.length != 0 ) error("No qualifier allowed for argument", pos);
 				{ name : a.name, kind : Local, type : a.type };
 			}];
+			if( args.length != 0 )
+				switch( f.name ) {
+				case "vertex", "fragment", "__init__":
+					error("Root function should have no argument", pos);
+				default:
+				}
 			var fv : TVar = {
 				name : f.name,
 				kind : Function,
@@ -233,6 +239,11 @@ class Checker {
 		case EIdent(name):
 			var v = vars.get(name);
 			if( v != null ) {
+				switch( name ) {
+				case "vertex", "fragment", "__init__":
+					error("Function cannot be accessed", e.pos);
+				default:
+				}
 				type = v.type;
 				TVar(v);
 			} else {