Кажется, это была ошибка. Это было решено начиная с clang
3.6 и далее, как показано здесь .
Распакованные массивы существуют по нескольким причинам:
1) Упакованные массивы хранятся в памяти как непрерывная последовательность битов. В распакованных массивах каждый элемент может храниться независимо, что может повысить производительность моделирования.
2) Распакованные массивы могут иметь типы, не являющиеся битовыми векторами. Массивы целых чисел, байтов, событий, структур, классов и т. Д. Можно только распаковывать.
3) Большинство методов манипулирования массивами работают только с распакованными массивами.
4) Возможно, только распакованные массивы можно назначать с помощью литералов массива. Я не уверен.
Могут быть и другие причины.