ASYNC_REG is not getting applied to registers when it is applied on net signals in HDL:
This is expected behavior.
The ASYNC_REG property can only be applied to cells.
In the example above it is applied to net signals that are connecting between register instances, and as a result it is ignored.
The attribute can be applied to the cell by using the declarative region between generate and begin as shown below: