The array_bounds_declarator for the first dimension of an array can take any of the following forms:
| [lower .. upper] | The lower bound is lower. The upper bound is upper. |
| [size] | The lower bound is 0 (zero). The upper bound is size 1. |
| [*] | The lower bound is 0 (zero). The upper bound is determined by a max_is or size_is attribute. |
| [ ] | Same as the preceding explanation. |
| [lower .. *] | The lower bound is lower. The upper bound is determined by a max_is or size_is attribute. |
| [* .. upper] | The lower bound is determined by a min_is attribute. The upper bound is upper. |
| [* .. *] | The lower bound is determined by a min_is attribute. The upper bound is determined by a size_is or max_is attribute. |