Damian’s table is an excellent summary. I reproduce it here for the sake of better visibility:
Bounds-preserving | Fortran feature |
---|---|
True | intrinsic assignment |
True | source allocation without specified bounds |
True | allocatable, assumed-shape dummy argument |
True | associate name |
False | non-allocatable, assumed-shape dummy argument |
False | function result |