From 86f08a341c02423ca7e735b3d86b43dc72cf0bfe Mon Sep 17 00:00:00 2001 From: Wilson Snyder Date: Wed, 8 Apr 2009 14:33:12 -0400 Subject: [PATCH] Fix error with tasks that have output first, bug78. --- Changes | 2 ++ src/V3Delayed.cpp | 1 + src/V3LinkLValue.cpp | 4 ++-- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Changes b/Changes index c65a9e569..fc12248d4 100644 --- a/Changes +++ b/Changes @@ -5,6 +5,8 @@ indicates the contributor was also the author of the fix; Thanks! * Verilator 3.7*** +**** Fix error with tasks that have output first, bug78. [Andrea Foletto] + **** Fix "cloning" error with -y/--top-module, bug76. [Dimitris Nalbantis] * Verilator 3.702 2009/03/28 diff --git a/src/V3Delayed.cpp b/src/V3Delayed.cpp index 7d19ca40b..d4742a03a 100644 --- a/src/V3Delayed.cpp +++ b/src/V3Delayed.cpp @@ -415,6 +415,7 @@ private: else if (!m_inDly && nodep->lvalue()) { //UINFO(9,"NBA "<varp(), VU_NONDLY); } } diff --git a/src/V3LinkLValue.cpp b/src/V3LinkLValue.cpp index d866d53ec..29ae60d73 100644 --- a/src/V3LinkLValue.cpp +++ b/src/V3LinkLValue.cpp @@ -211,10 +211,10 @@ private: if (AstVar* portp = stmtp->castVar()) { if (portp->isIO()) { if (portp->isInput()) { - pinp->iterateAndNext(*this); + pinp->iterate(*this); } else { // Output or Inout m_setRefLvalue = true; - pinp->iterateAndNext(*this); + pinp->iterate(*this); m_setRefLvalue = false; } // Advance pin