7 std::vector<Namespace> namespaces,
\r
8 std::vector<Variable> vars)
\r
15 std::vector<Namespace> namespaces,
\r
16 std::vector<Variable> vars)
\r
18 vars.insert(vars.end(), f.parameters.begin(), f.parameters.end());
\r
19 vars.insert(vars.end(), f.body.variables.begin(), f.body.variables.end());
\r
20 for (auto s : f.body.statements)
\r
22 if (!checkStmt(s, namespaces, vars))
\r
28 bool checkProgram(const Program & p)
\r
30 for (auto f : p.functions)
\r
32 if (!checkFunction(f, p.namespaces, p.variables))
\r
35 for (auto s : p.structs)
\r
37 std::vector<Variable> vars = p.variables;
\r
38 for (auto v : s.members)
\r
40 for (auto f : s.methods)
\r
42 if (!checkFunction(f, p.namespaces, vars))
\r