For pointer types the indices are restricted to one integer-like operand. For opaque types no further restrictions are made.
This converts `memref.alloca`, `memref.load` & `memref.store` to `emitc.variable`, `emitc.subscript` and `emitc.assign`.