/*@ Internal: opposite of code-in.h.
 *
 * Copyright (c) 2003 - 2020 Steffen (Daode) Nurpmeso <steffen@sdaoden.eu>.
 * SPDX-License-Identifier: ISC
 *
 * Permission to use, copy, modify, and/or distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 */
#ifndef su_CODE_IN_H
# error su/code-ou.h is useless if su/code-in.h has not been included
#endif
#undef su_CODE_IN_H
/* LANG */
#undef C_LANG
#undef C_DECL_BEGIN
#undef C_DECL_END
#undef NSPC_BEGIN
#undef NSPC_END
#undef NSPC_USE
#undef NSPC
#if defined su_CXX_HEADER || (defined su_SOURCE && !su_C_LANG)
# undef CLASS_NO_COPY
# undef SELFTHIS_RET
# undef PUB
# undef PRO
# undef PRI
# undef STA
# undef VIR
# undef OVR
# undef OVRX
#endif
#undef S
#undef R
#undef C
#undef NIL
#undef SHADOW
#undef EXPORT
#undef EXPORT_DATA
#undef IMPORT
#undef IMPORT_DATA
#undef CTA
#undef LCTA
#undef CTAV
#undef LCTAV
#undef MCTA
/* CC */
#undef PACKED
#undef INLINE
#undef SINLINE
#undef LIKELY
#undef UNLIKELY
/* SUPPORT MACROS+ */
#undef ABS
#undef CLIP
#undef IS_POW2
#undef MAX
#undef MIN
#undef ROUND_DOWN
#undef ROUND_DOWN2
#undef ROUND_UP
#undef ROUND_UP2
#undef ALIGNOF
#undef P_ALIGN
#undef Z_ALIGN_OVER
#undef Z_ALIGN
#undef Z_ALIGN_PZ
#undef ASSERT_INJ
#undef ASSERT_INJOR
#undef ASSERT_NB
#undef ASSERT
#undef ASSERT_LOC
#undef ASSERT_EXEC
#undef ASSERT_EXEC_LOC
#undef ASSERT_JUMP
#undef ASSERT_JUMP_LOC
#undef ASSERT_RET
#undef ASSERT_RET_LOC
#undef ASSERT_RET_VOID
#undef ASSERT_RET_VOID_LOC
#undef ASSERT_NYD_EXEC
#undef ASSERT_NYD_EXEC_LOC
#undef ASSERT_NYD
#undef ASSERT_NYD_LOC
#undef BITENUM_IS
#undef BITENUM_MASK
#undef DBG
#undef NDGB
#undef DBGOR
#undef DVL
#undef NDVL
#undef DVLOR
#undef FIELD_INITN
#undef FIELD_INITI
#undef FIELD_OFFSETOF
#undef FIELD_RANGEOF
#undef FIELD_SIZEOF
#undef MT
#undef NELEM
#undef NYD_OU_LABEL
#undef su__NYD_IN
#undef su__NYD_OU
#undef su__NYD
#undef NYD_IN
#undef NYD_OU
#undef NYD
#undef NYD2_IN
#undef NYD2_OU
#undef NYD2
#undef P2UZ
#undef PCMP
#ifdef mx_SOURCE
# undef A_
#endif
#if defined su_SOURCE || defined mx_SOURCE
# undef _
# undef N_
# undef V_
#endif
#undef SMP
#undef UCMP
#undef UNCONST
#undef UNVOLATILE
#undef UNALIGN
#undef UNINIT
#undef UNINIT_DECL
#undef UNUSED
#undef VFIELD_SIZE
#undef VSTRUCT_SIZEOF
/* POD TYPE SUPPORT (only if !C++) */
#if defined su_HEADER ||\
   ((defined su_SOURCE || defined mx_SOURCE) && su_C_LANG)
# undef ul
# undef ui
# undef us
# undef uc
# undef sl
# undef si
# undef ss
# undef sc
# undef u8
# undef s8
# undef u16
# undef s16
# undef u32
# undef s32
# undef u64
# undef s64
# undef uz
# undef sz
# undef up
# undef sp
# undef FAL0
# undef TRU1
# undef TRU2
# undef TRUM1
# undef boole
#endif /* su_HEADER || ((su_SOURCE || mx_SOURCE) && su_C_LANG) */
#undef U8_MAX
#undef S8_MIN
#undef S8_MAX
#undef U16_MAX
#undef S16_MIN
#undef S16_MAX
#undef U32_MAX
#undef S32_MIN
#undef S32_MAX
#undef U64_MAX
#undef S64_MIN
#undef S64_MAX
#undef U64_C
#undef S64_C
#undef UZ_MAX
#undef SZ_MIN
#undef SZ_MAX
#undef UZ_BITS
/* MEMORY */
#undef su_ALLOCATE
#undef su_ALLOCATE_LOC
#undef su_REALLOCATE
#undef su_REALLOCATE_LOC
#undef su_ALLOC
#undef su_ALLOC_LOC
#undef su_ALLOC_LOCOR
#undef su_ALLOC_N
#undef su_ALLOC_N_LOC
#undef su_ALLOC_N_LOCOR
#undef su_CALLOC
#undef su_CALLOC_LOC
#undef su_CALLOC_LOCOR
#undef su_CALLOC_N
#undef su_CALLOC_N_LOC
#undef su_CALLOC_N_LOCOR
#undef su_REALLOC
#undef su_REALLOC_LOC
#undef su_REALLOC_LOCOR
#undef su_REALLOC_N
#undef su_REALLOC_N_LOC
#undef su_REALLOC_N_LOCOR
#undef su_TALLOC
#undef su_TALLOC_LOC
#undef su_TALLOC_LOCOR
#undef su_TCALLOC
#undef su_TCALLOC_LOC
#undef su_TCALLOC_LOCOR
#undef su_TREALLOC
#undef su_TREALLOC_LOC
#undef su_TREALLOC_LOCOR
#undef su_TALLOCF
#undef su_TALLOCF_LOC
#undef su_TALLOCF_LOCOR
#undef su_TCALLOCF
#undef su_TCALLOCF_LOC
#undef su_TCALLOCF_LOCOR
#undef su_TREALLOCF
#undef su_TREALLOCF_LOC
#undef su_TREALLOCF_LOCOR
#undef su_FREE
#undef su_FREE_LOC
#undef su_FREE_LOCOR
#if !su_C_LANG
# undef su_NEW
# undef su_NEW_LOC
# undef su_NEW_LOCOR
# undef su_CNEW
# undef su_CNEW_LOC
# undef su_CNEW_LOCOR
# undef su_NEW_HEAP
# undef su_NEW_HEAP_LOC
# undef su_NEW_HEAP_LOCOR
# undef su_DEL
# undef su_DEL_LOC
# undef su_DEL_LOCOR
# undef su_DEL_HEAP
# undef su_DEL_HEAP_LOC
# undef su_DEL_HEAP_LOCOR
# undef su_DEL_PRIVATE
# undef su_DEL_PRIVATE_LOC
# undef su_DEL_PRIVATE_LOCOR
# undef su_DEL_HEAP_PRIVATE
# undef su_DEL_HEAP_PRIVATE_LOC
# undef su_DEL_HEAP_PRIVATE_LOCOR
#endif /* !C_LANG */
#ifdef su_MEM_BAG_SELF
# ifdef su_HAVE_MEM_BAG_AUTO
#  undef su_AUTO_ALLOC
#  undef su_AUTO_ALLOC_LOC
#  undef su_AUTO_ALLOC_LOCOR
#  undef su_AUTO_ALLOC_N
#  undef su_AUTO_ALLOC_N_LOC
#  undef su_AUTO_ALLOC_N_LOCOR
#  undef su_AUTO_CALLOC
#  undef su_AUTO_CALLOC_LOC
#  undef su_AUTO_CALLOC_LOCOR
#  undef su_AUTO_CALLOC_N
#  undef su_AUTO_CALLOC_N_LOC
#  undef su_AUTO_CALLOC_N_LOCOR
#  undef su_AUTO_TALLOC
#  undef su_AUTO_TALLOC_LOC
#  undef su_AUTO_TALLOC_LOCOR
#  undef su_AUTO_TCALLOC
#  undef su_AUTO_TCALLOC_LOC
#  undef su_AUTO_TCALLOC_LOCOR
# endif /* su_HAVE_MEM_BAG_AUTO */
# ifdef su_HAVE_MEM_BAG_LOFI
#  undef su_LOFI_ALLOC
#  undef su_LOFI_ALLOC_LOC
#  undef su_LOFI_ALLOC_LOCOR
#  undef su_LOFI_ALLOC_N
#  undef su_LOFI_ALLOC_N_LOC
#  undef su_LOFI_ALLOC_N_LOCOR
#  undef su_LOFI_CALLOC
#  undef su_LOFI_CALLOC_LOC
#  undef su_LOFI_CALLOC_LOCOR
#  undef su_LOFI_CALLOC_N
#  undef su_LOFI_CALLOC_N_LOC
#  undef su_LOFI_CALLOC_N_LOCOR
#  undef su_LOFI_TALLOC
#  undef su_LOFI_TALLOC_LOC
#  undef su_LOFI_TALLOC_LOCOR
#  undef su_LOFI_TCALLOC
#  undef su_LOFI_TCALLOC_LOC
#  undef su_LOFI_TCALLOC_LOCOR
#  undef su_LOFI_FREE
#  undef su_LOFI_FREE_LOC
#  undef su_LOFI_FREE_LOCOR
# endif /* su_HAVE_MEM_BAG_LOFI */
#endif /* su_MEM_BAG_SELF */
#undef su_HEADER
#undef su_CXX_HEADER
#undef mx_HEADER
#undef rf_HEADER
/* s-it-mode */
