#ifndef CUS_H
#define CUS_H

/*
                  cus.h -- CleanUpSequence support header

	  This peace of header code is designed to cleanup safty at error
	detection situations.  If you detect an error (mostly a wrong
	returncode from a function) you shouldn't call 'exit(0)' or 'return'
	only because of your still active stuff.  Or to quote CATS:

	  "[...] Always clean up after yourself.  [...] Anything that was
	opened must be closed, anything allocated must be deallocated.  It is
	generally correct to do closes and deallocations in the reverse order
	of the opens and allocations.  [...]"

	          -- 'Amiga ROM Kernel Reference Manual: Libraries & Devices'

          ___  _______
          /__)(_  /_       Genesis     : Sat Oct 12 22:48:22 1991
         / \____)(___      Last Change : Fri Jan 31 17:48:19 1992
        /                  Class       : ANSI C

      Copyright (c) Ralf S. Engelschall, All Rights Reserved.
																			*/


#define ZERO 0

#define STMT(stuff) do { stuff } while (ZERO)

#define CU(returncode) STMT( rc = returncode; goto CUS; )
#define EE(returncode) STMT( rc = returncode; goto EE; )	/* obsolete */
#define CU2() STMT( goto CUS; )		/* for special situations */

#endif /* CUS_H */

