Development Log

  • GNAT Pro
    Jan 17th, 2017

    Relaxed and strict secondary stack management
    The compiler now employs two different schemes of managing the secondary stack - relaxed and strict. In relaxed mode, a context which uses the secondary stack will no longer manage it if there exists an enclosing construct which already does that. This behavior cannot propagate beyond packages and subprograms. Relaxed mode is the default mode of secondary stack management. In strict mode, any context which uses the secondary stack will manage it unconditionally. This behavior can be enabled by switch -gnatd.s.