From b80ce9230ae10c5984739dfd349d1dcce0cd71b2 Mon Sep 17 00:00:00 2001 From: Cary R Date: Fri, 16 Nov 2007 18:10:16 -0800 Subject: [PATCH] Some synthesis errors were not incrementing the error count This patch cleans up some of the crashes in the synthesis code by incrementing the error count as appropriate. This also removes the three false positives in the test suite (Sorry-Ran-PASSED). A few other messages will change in the test suite as well (blocksynth? and basiclatch). --- synth2.cc | 25 ++++++------------------- 1 file changed, 6 insertions(+), 19 deletions(-) diff --git a/synth2.cc b/synth2.cc index bc7f4a49d..b6068cd84 100644 --- a/synth2.cc +++ b/synth2.cc @@ -83,6 +83,7 @@ bool NetAssignBase::synth_async(Design*des, NetScope*scope, << "NetAssignBase::synth_async on unsupported lval "; dump_lval(cerr); cerr << endl; + des->errors += 1; return false; } assert(lval_->more == 0); @@ -242,6 +243,7 @@ bool NetCase::synth_async(Design*des, NetScope*scope, if (stmt == 0) { cerr << get_line() << ": error: case " << idx << " is not accounted for in asynchronous mux." << endl; + des->errors += 1; continue; } @@ -321,6 +323,7 @@ bool NetCondit::synth_async(Design*des, NetScope*scope, #else cerr << get_line() << ": sorry: " << "Forgot to implement NetCondit::synth_async" << endl; + des->errors += 1; return false; #endif } @@ -529,6 +532,7 @@ bool NetBlock::synth_sync(Design*des, NetScope*scope, NetFF*ff, cerr << get_line() << ": sorry: " << "Forgot to implement NetBlock::synth_sync" << endl; + des->errors += 1; return false; #endif } @@ -750,6 +754,7 @@ bool NetCondit::synth_sync(Design*des, NetScope*scope, NetFF*ff, #else cerr << get_line() << ": sorry: " << "Forgot to implement NetCondit::synth_sync" << endl; + des->errors += 1; return false; #endif } @@ -986,6 +991,7 @@ void synth2_f::process(class Design*des, class NetProcTop*top) cerr << top->get_line() << ": internal error: " << "is_asynchronous does not match " << "sync_async results." << endl; + des->errors += 1; return; } @@ -998,22 +1004,3 @@ void synth2(Design*des) des->functor(&synth_obj); } -/* - * $Log: synth2.cc,v $ - * Revision 1.46 2007/03/22 16:08:17 steve - * Spelling fixes from Larry - * - * Revision 1.45 2005/08/27 04:32:08 steve - * Handle synthesis of fully packed case statements. - * - * Revision 1.44 2005/05/15 04:45:50 steve - * Debug text. - * - * Revision 1.43 2005/04/25 01:35:58 steve - * Reimplement basic asynchronous processes. - * - * Revision 1.42 2005/04/24 23:44:02 steve - * Update DFF support to new data flow. - * - */ -