Files
mercury/mdbcomp/RESERVED_MACRO_NAMES
Julien Fischer 5b1105b6a3 Avoid failures in the namespace cleanliness check in .par grade on MinGW.
Branches: main, 11.07

Avoid failures in the namespace cleanliness check in .par grade on MinGW.

*/RESERVED_MACRO_NAMES:
	Add some macros automatically defined by GCC on MinGW.
2011-09-14 07:00:44 +00:00

78 lines
3.2 KiB
Plaintext

#-----------------------------------------------------------------------------#
# Copyright (C) 2000-2004, 2006, 2011 The University of Melbourne.
# This file may only be copied under the terms of the GNU General
# Public License - see the file COPYING in the Mercury distribution.
#-----------------------------------------------------------------------------#
#
# RESERVED_MACRO_NAMES
#
# This file lists the macro names, other than the ones starting with a
# certain set of allowed prefixes that are defined by the Mercury header files.
# The Mmakefile target `check_headers' automatically checks that no other
# macro names are defined. This is done to keep our headers namespace-clean,
# i.e. ensure that we don't invade the user's namespace.
#
# This file is used as the argument to `fgrep -f'.
# Lines starting with `#' will not match anything in the input,
# and can thus be used as comments.
# Other lines are treated as strings to match against.
#
#-----------------------------------------------------------------------------#
# This is documented in the Mercury language reference manual
# and defined by mercury_types.h.
SUCCESS_INDICATOR
#-----------------------------------------------------------------------------#
# pid_t is only defined in mercury_conf.h if it is not present
# in the system headers. I don't think there is a nice way to
# prefix this without requiring a later version of autoconf (e.g. 2.52).
pid_t
#-----------------------------------------------------------------------------#
# These are defined by boehm_gc/gc.h.
__GC
_GC_H
HIDE_POINTER
LINUX_THREADS
REVEAL_POINTER
#-----------------------------------------------------------------------------#
# These are defined by boehm_gc/include/gc_pthread_redirects.h
dlopen
pthread_create
pthread_detach
pthread_join
pthread_sigmask
#-----------------------------------------------------------------------------#
# This is defined by mps_gc/code/mercury_mps.h,
# which uses this macro for its header guard.
# Normally it would be better to use uppercase for header guard macro names,
# but that would be inconsistent with the coding style used in mps_gc/code.
mercury_mps_h
#-----------------------------------------------------------------------------#
# This is defined by the mgnuc script in some grades.
# It is used for configuring the Boehm collector.
# XXX it should have a GC_ prefix.
NO_SIGNALS
#-----------------------------------------------------------------------------#
# These are defined automatically by GCC -- gcc optionally passes
# them on the command line when calling cc1, depending on the
# exact options which gcc was invoked with. These are not
# namespace pollution, since they are in the _[A-Z]* namespace
# which is reserved for the C implementation, and they are being
# defined by the C implementation.
_GNU_SOURCE
__EXTENSIONS__
__OPTIMIZE__
__STRICT_ANSI__
__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1
__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2
__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4
__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8
__i686
__i686__
__pentiumpro
__pentiumpro__
#-----------------------------------------------------------------------------#
# These are defined in when threads are enabled.
_REENTRANT
_THREAD_SAFE
#-----------------------------------------------------------------------------#