From d486b81f2325731dd0e081f4bdb19d25bb776d86 Mon Sep 17 00:00:00 2001 From: steve Date: Mon, 27 Nov 2006 01:47:14 +0000 Subject: [PATCH] Fix crash handling constant true conditional. --- elaborate.cc | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/elaborate.cc b/elaborate.cc index e64024fe2..50734d53d 100644 --- a/elaborate.cc +++ b/elaborate.cc @@ -17,7 +17,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ #ifdef HAVE_CVS_IDENT -#ident "$Id: elaborate.cc,v 1.308.2.5 2006/11/27 01:32:24 steve Exp $" +#ident "$Id: elaborate.cc,v 1.308.2.6 2006/11/27 01:47:14 steve Exp $" #endif # include "config.h" @@ -1483,7 +1483,13 @@ NetProc* PCondit::elaborate(Design*des, NetScope*scope) const val_reduced = val_reduced | val[idx]; if (val_reduced == verinum::V1) - return if_->elaborate(des, scope); + if (if_) { + return if_->elaborate(des, scope); + } else { + NetBlock*tmp = new NetBlock(NetBlock::SEQU, 0); + tmp->set_line(*this); + return tmp; + } else if (else_) return else_->elaborate(des, scope); else { @@ -2806,6 +2812,9 @@ Design* elaborate(listroots) /* * $Log: elaborate.cc,v $ + * Revision 1.308.2.6 2006/11/27 01:47:14 steve + * Fix crash handling constant true conditional. + * * Revision 1.308.2.5 2006/11/27 01:32:24 steve * Fix evaluate of constant condition expressions. *