mirror of
https://github.com/Mercury-Language/mercury.git
synced 2025-12-15 22:03:26 +00:00
Estimated hours taken: 0.1 Branches: main Avoid failing the namespace cleanliness check in .par grades. Boehm GC now intercepts several pthread functions. browser/RESERVED_MACRO_NAMES: library/RESERVED_MACRO_NAMES: runtime/RESERVED_MACRO_NAMES: trace/RESERVED_MACRO_NAMES: Conform to the recent update of the Boehm collector.
70 lines
3.0 KiB
Plaintext
70 lines
3.0 KiB
Plaintext
#-----------------------------------------------------------------------------#
|
|
# Copyright (C) 2000-2004, 2006 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__
|
|
#-----------------------------------------------------------------------------#
|
|
# These are defined in when threads are enabled.
|
|
_REENTRANT
|
|
_THREAD_SAFE
|
|
#-----------------------------------------------------------------------------#
|