Remove analysis tests from interpreter
This commit is contained in:
parent
ad87228a45
commit
aad20e3ee5
@ -285,9 +285,6 @@ EvalResult eval(Node &ast, Memory &memory) {
|
||||
string typeName = get<string>(typeTok.data);
|
||||
string identifier = get<string>(identifierTok.data);
|
||||
|
||||
if (memory.contains_top(identifier))
|
||||
throw RuntimeError("Already defined identifier \""+identifier+"\"", identifierTok.pos);
|
||||
|
||||
memory.declare(identifier, string_to_type(typeName));
|
||||
|
||||
return {};
|
||||
@ -299,9 +296,6 @@ EvalResult eval(Node &ast, Memory &memory) {
|
||||
string identifier = get<string>(identifierTok.data);
|
||||
EvalResult value = eval(node.children[2], memory);
|
||||
|
||||
if (memory.contains_top(identifier))
|
||||
throw RuntimeError("Already defined identifier \""+identifier+"\"", identifierTok.pos);
|
||||
|
||||
Type type = string_to_type(typeName);
|
||||
memory.declare(identifier, type);
|
||||
|
||||
@ -319,9 +313,6 @@ EvalResult eval(Node &ast, Memory &memory) {
|
||||
string identifier = get<string>(identifierTok.data);
|
||||
EvalResult value = eval(node.children[1], memory);
|
||||
|
||||
if (!memory.contains(identifier))
|
||||
throw RuntimeError("Unknown identifier \""+identifier+"\"", identifierTok.pos);
|
||||
|
||||
Type type = memory.get(identifier).type;
|
||||
|
||||
if (type == Type::Int) {
|
||||
@ -337,9 +328,6 @@ EvalResult eval(Node &ast, Memory &memory) {
|
||||
Token identifierTok = get<Token>(node.children[0]);
|
||||
string identifier = get<string>(identifierTok.data);
|
||||
|
||||
if (!memory.contains(identifier))
|
||||
throw RuntimeError("Unknown identifier \""+identifier+"\"", identifierTok.pos);
|
||||
|
||||
MemoryVar& var = memory.get(identifier);
|
||||
|
||||
if (!var.initialized) {
|
||||
@ -357,9 +345,6 @@ EvalResult eval(Node &ast, Memory &memory) {
|
||||
Token identifierTok = get<Token>(node.children[0]);
|
||||
string identifier = get<string>(identifierTok.data);
|
||||
|
||||
if (!memory.contains(identifier))
|
||||
throw RuntimeError("Unknown identifier \""+identifier+"\"", identifierTok.pos);
|
||||
|
||||
MemoryVar& var = memory.get(identifier);
|
||||
|
||||
if (!var.initialized) {
|
||||
@ -378,9 +363,6 @@ EvalResult eval(Node &ast, Memory &memory) {
|
||||
Token identifierTok = get<Token>(node.children[0]);
|
||||
string identifier = get<string>(identifierTok.data);
|
||||
|
||||
if (!memory.contains(identifier))
|
||||
throw RuntimeError("Unknown identifier \""+identifier+"\"", identifierTok.pos);
|
||||
|
||||
MemoryVar& var = memory.get(identifier);
|
||||
|
||||
if (!var.initialized) {
|
||||
@ -398,9 +380,6 @@ EvalResult eval(Node &ast, Memory &memory) {
|
||||
Token identifierTok = get<Token>(node.children[0]);
|
||||
string identifier = get<string>(identifierTok.data);
|
||||
|
||||
if (!memory.contains(identifier))
|
||||
throw RuntimeError("Unknown identifier \""+identifier+"\"", identifierTok.pos);
|
||||
|
||||
MemoryVar& var = memory.get(identifier);
|
||||
|
||||
if (!var.initialized) {
|
||||
@ -435,9 +414,6 @@ EvalResult eval(Node &ast, Memory &memory) {
|
||||
} break;
|
||||
case TokenType::Identifier: {
|
||||
string identifier = get<string>(token.data);
|
||||
|
||||
if (!memory.contains(identifier))
|
||||
throw RuntimeError("Unknown identifier \""+identifier+"\"", token.pos);
|
||||
|
||||
MemoryVar& var = memory.get(identifier);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user