diff options
-rw-r--r-- | Parser.cpp | 7 | ||||
-rw-r--r-- | main.cpp | 3 |
2 files changed, 6 insertions, 4 deletions
@@ -60,7 +60,12 @@ void Parser::parse(istream & input) { } if (circuit == nullptr) throw ParserException("circuit is not initialized!"); - circuit->create(label, nodes); + + try { + circuit->create(label, nodes); + } catch(CircuitException & c) { + throw ParserException("Circuit error on line %u: %s", linenum, c.what()); + } } } @@ -22,9 +22,6 @@ int main(int argc, char** argv) { } catch (ParserException & e) { cout << "Parser error: " << e.what() << endl; return EXIT_FAILURE; - } catch (CircuitException & e) { - cout << "Circuit error: " << e.what() << endl; - return EXIT_FAILURE; } try { |