diff --git a/elab_scope.cc b/elab_scope.cc index 99a14081d..d6a3bf40a 100644 --- a/elab_scope.cc +++ b/elab_scope.cc @@ -50,6 +50,7 @@ # include "netlist.h" # include "netclass.h" # include "netenum.h" +# include "netqueue.h" # include "parse_api.h" # include "util.h" # include @@ -557,6 +558,13 @@ static void elaborate_scope_class(Design*des, NetScope*scope, PClass*pclass) << " Property " << cur->first << " type=" << *tmp << endl; } + + if (dynamic_cast (tmp)) { + cerr << cur->second.get_fileline() << ": sorry: " + << "Queues inside classes are not yet supported." << endl; + des->errors++; + } + use_class->set_property(cur->first, cur->second.qual, tmp); } diff --git a/elab_type.cc b/elab_type.cc index b77138ac3..4471e1b28 100644 --- a/elab_type.cc +++ b/elab_type.cc @@ -241,10 +241,6 @@ ivl_type_t uarray_type_t::elaborate_type_raw(Design*des, NetScope*scope) const // Special case: if the dimension is null:nil. this is a queue. if (dynamic_cast(cur->first)) { - cerr << get_fileline() << ": sorry: " - << "SV queues inside classes are not yet supported." << endl; - des->errors += 1; - // FIXME: Need to set the max size if cur->second is defined ivl_type_s*res = new netqueue_t(btype, -1); return res;