Quick throw
This commit is contained in:
@ -445,6 +445,7 @@ declaration:
|
||||
printdebug("ID/TYPE: %s, ID: %s", getName((TableNode*)$1), $3) ;
|
||||
int d = getAdInfoType((TableNode*)$1);
|
||||
if(d == TYPE_UNDEFINED) {
|
||||
throw_error(ERROR_TYPE, "Undefined type passed in declaration list");
|
||||
printdebug("Undefined type passed in declaration list");
|
||||
CreateEntry(cur,d,(TableNode*)$1,$3,getAdInfo((TableNode*)$1));
|
||||
}
|
||||
@ -468,7 +469,7 @@ declaration:
|
||||
d = TYPE_PRIMITIVE;
|
||||
CreateEntry(cur,d,(TableNode*)$1,$3,getAdInfo((TableNode*)$1));
|
||||
}else {
|
||||
printdebug("Invalid type passed in declaration list.");
|
||||
throw_error(ERROR_TYPE, "%s is being defined with an undefined type", $3);
|
||||
CreateEntry(cur,d,(TableNode*)$1,$3,getAdInfo((TableNode*)$1));
|
||||
}
|
||||
}
|
||||
@ -841,6 +842,9 @@ assignable:
|
||||
ID
|
||||
{
|
||||
TableNode* pass = look_up(cur,$1);
|
||||
if(pass == undefined){
|
||||
throw_error(ERROR_TYPE, "Undefined variable %s", $1);
|
||||
}
|
||||
$$ = pass;
|
||||
printdebug("[ASSIGNABLE - RULE 1] assignable = type: %s | ID = %s", getType(pass), getName(pass));
|
||||
}
|
||||
|
Reference in New Issue
Block a user