#if __IBMC__ || __IBMCPP__
   #pragma info(none)
   #ifndef __CHKHDR__
      #pragma info(none)
   #endif
   #pragma info(restore)
#endif

#if __cplusplus
   extern "C" {
#endif

#ifndef _LNK_CONV
   #if __IBMC__ || __IBMCPP__ || defined(_OPTLINK_SUPPORTED)
      #define _LNK_CONV _Optlink
   #else
      #define _LNK_CONV
   #endif
#endif

#ifndef _IMPORT
   #if __IMPORTLIB__
      #define _IMPORT _Import
   #else
      #define _IMPORT
   #endif
#endif

/********************************************************************/
/*  <assert.h> Header File                                          */
/*  IBM C and C++ Compilers for OS/2, AIX and for Windows NT,       */
/*  Version 3.6                                                     */
/*  Licensed Material - Property of IBM                             */
/*  (C) Copyright IBM Corp. 1991, 1997. All rights reserved         */
/*                                                                  */
/********************************************************************/

#ifndef NDEBUG
   #undef assert
   extern void _IMPORT _LNK_CONV _assert(const char *, const char *, unsigned int);

   #define assert(expr) ((expr)? (void)0: _assert(#expr, __FILE__, __LINE__))
#else
   #undef assert
   #define assert(ignore) ((void)0)
#endif

#if __cplusplus
   }
#endif

#if __IBMC__ || __IBMCPP__
   #pragma info(none)
   #ifndef __CHKHDR__
      #pragma info(restore)
   #endif
   #pragma info(restore)
#endif

