From: Clifford Wolf Date: Fri, 15 Mar 2013 09:29:25 +0000 (+0100) Subject: Fixed gcc warnings and added error handling to shell escape X-Git-Tag: yosys-0.2.0~716 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=35b4a2c553557b7b012edabf1bab805c74bd7892;p=yosys.git Fixed gcc warnings and added error handling to shell escape --- diff --git a/kernel/register.cc b/kernel/register.cc index 5c9b40cd1..ebb834c8f 100644 --- a/kernel/register.cc +++ b/kernel/register.cc @@ -142,7 +142,9 @@ void Pass::call(RTLIL::Design *design, std::string command) while (p >= s && (*p == '\r' || *p == '\n')) *(p--) = 0; log_header("Shell command: %s\n", s); - system(s); + int retCode = system(s); + if (retCode != 0) + log_cmd_error("Shell command returned error code %d.\n", retCode); return; } for (char *p = strtok_r(s, " \t\r\n", &saveptr); p; p = strtok_r(NULL, " \t\r\n", &saveptr)) { diff --git a/passes/scc/scc.cc b/passes/scc/scc.cc index e665fd09e..0dde3cbe8 100644 --- a/passes/scc/scc.cc +++ b/passes/scc/scc.cc @@ -73,6 +73,7 @@ struct SccWorker } if (cellLabels[cell].first == cellLabels[cell].second) + { if (cellStack.back() == cell) { cellStack.pop_back(); @@ -93,6 +94,7 @@ struct SccWorker sccList.push_back(scc); log("\n"); } + } } SccWorker(RTLIL::Design *design, RTLIL::Module *module, bool allCellTypes, int maxDepth) : design(design), module(module), sigmap(module)