Listing 5 DBG_STAK.H — checks for minimum free available stack space.

/********************************************************************
             Name: DBG_STAK.H
       Description: Macro wrapper for return keyword
                  to measure minimum free stack.
       Portability: Standard C
********************************************************************/
#if !defined ( DBG_STAK_DEFINED )

   #if !defined ( NDEBUG )
      size_t get_min_stackavail( void );
      size_t check_min_stackavail( void );
      #define return( Arg ) \
         do \
            { \
            check_min_stackavail(); \
            return ( Arg ); \
            } while( 0 )
   #endif

   #define DBG_STAK_DEFINED

#endif

/* End of File */