Next: No_Obsolescent_Features, Previous: No_Implicit_Aliasing, Up: Program Unit Level Restrictions [Contents][Index]
[GNAT] This restriction ensures that the generated code of the unit marked
with this restriction does not contain any implicit for
loops, either by
modifying the generated code where possible, or by rejecting any construct
that would otherwise generate an implicit for
loop. If this restriction is
active, it is possible to build large array aggregates with all static
components without generating an intermediate temporary, and without generating
a loop to initialize individual components. Otherwise, a loop is created for
arrays larger than about 5000 scalar components. Note that if this restriction
is set in the spec of a package, it will not apply to its body.