diff --git a/vhdlpp/vtype_stream.cc b/vhdlpp/vtype_stream.cc index b1d5d5735..2b2d70534 100644 --- a/vhdlpp/vtype_stream.cc +++ b/vhdlpp/vtype_stream.cc @@ -30,6 +30,17 @@ void VType::write_to_stream(ostream&fd) const void VTypeArray::write_to_stream(ostream&fd) const { + // Special case: std_logic_vector + if (etype_ == &primitive_STDLOGIC) { + fd << "std_logic_vector"; + if (ranges_.size() > 0) { + assert(ranges_.size() < 2); + fd << " (" << ranges_[0].msb() + << " downto " << ranges_[0].lsb() << ") "; + } + return; + } + fd << "array "; if (ranges_.size() > 0) { assert(ranges_.size() < 2);