Expression of this type cannot be used to index the array

In reply to desperadorocks:

The syntax is not legal, though simulators other than the one you are using support it. You are only allowed one set of 's in a foreach loop. Normally you would do there following to skip of iterating one of the dimensions:

foreach(agt_pts[,z])

But that doesn’t work when the z dimension is dynamically sized.

A few other non-standard code fragments

  • config is a reserved keyword
  • You cannot use an assignment pattern with named indexes to assign to a queue. Use array concatenation
bit[7:0] agt_pts[string][$] = '{"alu0":{h11}, "cpu0":{h11,'h22}};

  • You cannot initialize an implicitly static variable(aac_inst) in its declaration. People mistakenly think it gets initialized as part of entering the procedural block it in.