summaryrefslogtreecommitdiff
path: root/chiselFrontend/src/main/scala/chisel3
diff options
context:
space:
mode:
authorAndrew Waterman2017-03-27 15:50:32 -0700
committerAndrew Waterman2017-03-27 16:01:21 -0700
commit8e4ddc62db448b613ae327792e72defca4d115d4 (patch)
tree97bc954bd7e724ecb0ff88c136449a263d8e7b08 /chiselFrontend/src/main/scala/chisel3
parente769e5a26f6bd3f87962ad084776c01316ad6fbf (diff)
Support Vec(0) fields in Bundles, just like Option[Data]; add test
This also allows asUInt/asTypeOf to work properly on those Bundles, even though zero-width wire support is lacking.
Diffstat (limited to 'chiselFrontend/src/main/scala/chisel3')
-rw-r--r--chiselFrontend/src/main/scala/chisel3/core/Aggregate.scala1
1 files changed, 1 insertions, 0 deletions
diff --git a/chiselFrontend/src/main/scala/chisel3/core/Aggregate.scala b/chiselFrontend/src/main/scala/chisel3/core/Aggregate.scala
index d2953aa3..a561e7d5 100644
--- a/chiselFrontend/src/main/scala/chisel3/core/Aggregate.scala
+++ b/chiselFrontend/src/main/scala/chisel3/core/Aggregate.scala
@@ -499,6 +499,7 @@ class Bundle extends Record {
* be one, otherwise returns None.
*/
private def getBundleField(m: java.lang.reflect.Method): Option[Data] = m.invoke(this) match {
+ case v: Vec[_] if v.isEmpty => None
case d: Data => Some(d)
case Some(d: Data) => Some(d)
case _ => None