summaryrefslogtreecommitdiffstats
path: root/src/H5private.h
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2012-02-09 03:13:27 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2012-02-09 03:13:27 (GMT)
commit9c9ee2008c10801c11bce8563894d9a30ba9a959 (patch)
treec2b89df08fa3895d3fae1a4ad87353f9aabee598 /src/H5private.h
parenteb0e5f8c4ea29e674c97a8be048814e26379d4c1 (diff)
downloadhdf5-9c9ee2008c10801c11bce8563894d9a30ba9a959.zip
hdf5-9c9ee2008c10801c11bce8563894d9a30ba9a959.tar.gz
hdf5-9c9ee2008c10801c11bce8563894d9a30ba9a959.tar.bz2
[svn-r21919] Description:
Refactor function name macros and simplify the FUNC_ENTER macros, to clear away the cruft and prepare for further cleanups. Tested on: Mac OSX/64 10.7.3 (amazon) w/debug, production & parallel
Diffstat (limited to 'src/H5private.h')
-rw-r--r--src/H5private.h293
1 files changed, 115 insertions, 178 deletions
diff --git a/src/H5private.h b/src/H5private.h
index 94f7aad..539b39d 100644
--- a/src/H5private.h
+++ b/src/H5private.h
@@ -197,11 +197,10 @@
*/
#define eventa(func_name) h5_mpe_eventa
#define eventb(func_name) h5_mpe_eventb
-#define MPE_LOG_VARS(func_name) \
- static int eventa(func_name) = -1; \
- static int eventb(func_name) = -1; \
- const char* p_end_funcname = #func_name; \
- const char* p_event_start = "start" #func_name;
+#define MPE_LOG_VARS \
+ static int eventa(FUNC) = -1; \
+ static int eventb(FUNC) = -1; \
+ const char* p_event_start = "start" FUNC;
/* Hardwire the color to "red", since that's what all the routines are using
* now. In the future, if we want to change that color for a given routine,
@@ -210,15 +209,15 @@
* color information down to the BEGIN_MPE_LOG macro (which should have a new
* BEGIN_MPE_LOG_COLOR variant). -QAK
*/
-#define BEGIN_MPE_LOG(func_name) \
+#define BEGIN_MPE_LOG \
if (H5_MPEinit_g){ \
- if (eventa(func_name) == -1 && eventb(func_name) == -1) { \
+ if (eventa(FUNC) == -1 && eventb(FUNC) == -1) { \
const char* p_color = "red"; \
- eventa(func_name)=MPE_Log_get_event_number(); \
- eventb(func_name)=MPE_Log_get_event_number(); \
- MPE_Describe_state(eventa(func_name), eventb(func_name), (char *)p_end_funcname, (char *)p_color); \
+ eventa(FUNC)=MPE_Log_get_event_number(); \
+ eventb(FUNC)=MPE_Log_get_event_number(); \
+ MPE_Describe_state(eventa(FUNC), eventb(FUNC), (char *)FUNC, (char *)p_color); \
} \
- MPE_Log_event(eventa(func_name), 0, (char *)p_event_start); \
+ MPE_Log_event(eventa(FUNC), 0, (char *)p_event_start); \
}
@@ -230,12 +229,12 @@
*/
#define FINISH_MPE_LOG \
if (H5_MPEinit_g) { \
- MPE_Log_event(eventb(func_name), 0, (char *)p_end_funcname); \
+ MPE_Log_event(eventb(FUNC), 0, (char *)FUNC); \
}
#else /* H5_HAVE_MPE */
-#define MPE_LOG_VARS(func_name) /* void */
-#define BEGIN_MPE_LOG(func_name) /* void */
+#define MPE_LOG_VARS /* void */
+#define BEGIN_MPE_LOG /* void */
#define FINISH_MPE_LOG /* void */
#endif /* H5_HAVE_MPE */
@@ -275,15 +274,6 @@
#endif /* __cplusplus */
/*
- * Does the compiler expand __FUNCTION__ to be the name of the function
- * currently being defined? If not then define it to be some constant
- * string.
- */
-#ifndef H5_HAVE_FUNCTION
-# define __FUNCTION__ "NoFunctionName"
-#endif
-
-/*
* Status return values for the `herr_t' type.
* Since some unix/c routines use 0 and -1 (or more precisely, non-negative
* vs. negative) as their return code, and some assumption had been made in
@@ -1508,6 +1498,15 @@ extern char *strdup(const char *s);
#define COLON_SEPC ':'
+/* Use FUNC to safely handle variations of C99 __func__ keyword handling */
+#ifdef H5_HAVE_C99_FUNC
+#define FUNC __func__
+#elif defined(H5_HAVE_FUNCTION)
+#define FUNC __FUNCTION__
+#else
+#error "We need __func__ or __FUNCTION__ to test function names!"
+#endif
+
/*
* These macros check whether debugging has been requested for a certain
* package at run-time. Code for debugging is conditionally compiled by
@@ -1653,8 +1652,6 @@ H5_DLL double H5_trace(const double *calltime, const char *func, const char *typ
*
* Programmer: Quincey Koziol
*
- * Modifications:
- *
*-------------------------------------------------------------------------
*/
@@ -1662,6 +1659,24 @@ H5_DLL double H5_trace(const double *calltime, const char *func, const char *typ
/* an API function */
#define H5_IS_API(S) ('_'!=((const char *)S)[2] && '_'!=((const char *)S)[3] && (!((const char *)S)[4] || '_'!=((const char *)S)[4]))
+/* `S' is the name of a function which is being tested to check if it's */
+/* a public API function */
+#define H5_IS_PUB(S) (((HDisdigit(S[1]) || HDisupper(S[1])) && HDislower(S[2])) || \
+ ((HDisdigit(S[2]) || HDisupper(S[2])) && HDislower(S[3])) || \
+ (!S[4] || ((HDisdigit(S[3]) || HDisupper(S[3])) && HDislower(S[4]))))
+
+/* `S' is the name of a function which is being tested to check if it's */
+/* a private library function */
+#define H5_IS_PRIV(S) (((HDisdigit(S[1]) || HDisupper(S[1])) && '_' == S[2] && HDislower(S[3])) || \
+ ((HDisdigit(S[2]) || HDisupper(S[2])) && '_' == S[3] && HDislower(S[4])) || \
+ ((HDisdigit(S[3]) || HDisupper(S[3])) && '_' == S[4] && HDislower(S[5])))
+
+/* `S' is the name of a function which is being tested to check if it's */
+/* a package private function */
+#define H5_IS_PKG(S) (((HDisdigit(S[1]) || HDisupper(S[1])) && '_' == S[2] && '_' == S[3] && HDislower(S[4])) || \
+ ((HDisdigit(S[2]) || HDisupper(S[2])) && '_' == S[3] && '_' == S[4] && HDislower(S[5])) || \
+ ((HDisdigit(S[3]) || HDisupper(S[3])) && '_' == S[4] && '_' == S[5] && HDislower(S[6])))
+
/* global library version information string */
extern char H5_lib_vers_info_g[];
@@ -1728,10 +1743,10 @@ extern hbool_t H5_libinit_g; /* Has the library been initialized? */
/* Include required function stack header */
#include "H5CSprivate.h"
-#define H5_PUSH_FUNC(func_name) H5CS_push(func_name);
+#define H5_PUSH_FUNC H5CS_push(FUNC);
#define H5_POP_FUNC H5CS_pop();
#else /* H5_HAVE_CODESTACK */
-#define H5_PUSH_FUNC(func_name) /* void */
+#define H5_PUSH_FUNC /* void */
#define H5_POP_FUNC /* void */
#endif /* H5_HAVE_CODESTACK */
@@ -1739,15 +1754,6 @@ extern hbool_t H5_libinit_g; /* Has the library been initialized? */
extern hbool_t H5_MPEinit_g; /* Has the MPE Library been initialized? */
#endif
-/* Check if the function name is correct (if the compiler supports __FUNCTION__) */
-#ifdef H5_HAVE_FUNCTION
-#define H5_CHECK_FUNCNAME(func_name) \
- assert(!HDstrcmp(#func_name, __FUNCTION__))
-#else /* H5_HAVE_FUNCTION */
-#define H5_CHECK_FUNCNAME(func_name) \
- assert(func_name)
-#endif /* H5_HAVE_FUNCTION */
-
/* Macros for defining interface initialization routines */
#ifdef H5_INTERFACE_INIT_FUNC
static int H5_interface_initialize_g = 0;
@@ -1768,31 +1774,29 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
#ifndef NDEBUG
-#define FUNC_ENTER_COMMON_NOFUNC(func_name,asrt) \
- static hbool_t func_check = FALSE; \
- \
- if(!func_check) { \
- /* Check API status */ \
- HDassert(asrt); \
- \
- /* Check function name */ \
- H5_CHECK_FUNCNAME(func_name); \
- \
- /* Don't check again */ \
- func_check = TRUE; \
- } /* end if */
+#define FUNC_ENTER_CHECK_NAME(asrt) \
+ { \
+ static hbool_t func_check = FALSE; \
+ \
+ if(!func_check) { \
+ /* Check function naming status */ \
+ HDassert(asrt); \
+ \
+ /* Don't check again */ \
+ func_check = TRUE; \
+ } /* end if */ \
+ } /* end scope */
#else /* NDEBUG */
-#define FUNC_ENTER_COMMON_NOFUNC(func_name,asrt)
+#define FUNC_ENTER_CHECK_NAME(asrt)
#endif /* NDEBUG */
-#define FUNC_ENTER_COMMON(func_name, asrt) \
- static const char FUNC[] = #func_name; \
+
+#define FUNC_ENTER_COMMON(asrt) \
hbool_t err_occurred = FALSE; \
- FUNC_ENTER_COMMON_NOFUNC(func_name, asrt);
+ FUNC_ENTER_CHECK_NAME(asrt);
-#define FUNC_ENTER_COMMON_NOERR(func_name, asrt) \
- static const char FUNC[] = #func_name; \
- FUNC_ENTER_COMMON_NOFUNC(func_name, asrt);
+#define FUNC_ENTER_COMMON_NOERR(asrt) \
+ FUNC_ENTER_CHECK_NAME(asrt);
/* Threadsafety initialization code for API routines */
#define FUNC_ENTER_API_THREADSAFE \
@@ -1804,16 +1808,16 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
H5_API_LOCK
/* Local variables for API routines */
-#define FUNC_ENTER_API_VARS(func_name) \
- MPE_LOG_VARS(func_name) \
+#define FUNC_ENTER_API_VARS \
+ MPE_LOG_VARS \
H5TRACE_DECL
-#define FUNC_ENTER_API_COMMON(func_name) \
- FUNC_ENTER_API_VARS(func_name) \
- FUNC_ENTER_COMMON(func_name, H5_IS_API(#func_name)); \
+#define FUNC_ENTER_API_COMMON \
+ FUNC_ENTER_API_VARS \
+ FUNC_ENTER_COMMON(H5_IS_API(FUNC)); \
FUNC_ENTER_API_THREADSAFE;
-#define FUNC_ENTER_API_INIT(func_name,err) \
+#define FUNC_ENTER_API_INIT(err) \
/* Initialize the library */ \
if(!(H5_INIT_GLOBAL)) { \
H5_INIT_GLOBAL = TRUE; \
@@ -1826,14 +1830,14 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
H5_INTERFACE_INIT(err) \
\
/* Push the name of this function on the function stack */ \
- H5_PUSH_FUNC(#func_name) \
+ H5_PUSH_FUNC \
\
- BEGIN_MPE_LOG(func_name)
+ BEGIN_MPE_LOG
/* Use this macro for all "normal" API functions */
-#define FUNC_ENTER_API(func_name,err) {{ \
- FUNC_ENTER_API_COMMON(func_name) \
- FUNC_ENTER_API_INIT(func_name,err); \
+#define FUNC_ENTER_API(err) {{ \
+ FUNC_ENTER_API_COMMON \
+ FUNC_ENTER_API_INIT(err); \
/* Clear thread error stack entering public functions */ \
H5E_clear_stack(NULL); \
{
@@ -1842,9 +1846,9 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
* Use this macro for API functions that shouldn't clear the error stack
* like H5Eprint and H5Ewalk.
*/
-#define FUNC_ENTER_API_NOCLEAR(func_name,err) {{ \
- FUNC_ENTER_API_COMMON(func_name) \
- FUNC_ENTER_API_INIT(func_name,err); \
+#define FUNC_ENTER_API_NOCLEAR(err) {{ \
+ FUNC_ENTER_API_COMMON \
+ FUNC_ENTER_API_INIT(err); \
{
/*
@@ -1853,10 +1857,10 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
* are: H5check_version, etc.
*
*/
-#define FUNC_ENTER_API_NOINIT(func_name) {{ \
- FUNC_ENTER_API_COMMON(func_name) \
- H5_PUSH_FUNC(#func_name) \
- BEGIN_MPE_LOG(func_name); \
+#define FUNC_ENTER_API_NOINIT {{ \
+ FUNC_ENTER_API_COMMON \
+ H5_PUSH_FUNC \
+ BEGIN_MPE_LOG \
{
/*
@@ -1866,37 +1870,31 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
* are: H5close, H5check_version, etc.
*
*/
-#define FUNC_ENTER_API_NOINIT_NOERR_NOFS(func_name) {{ \
- FUNC_ENTER_API_VARS(func_name) \
- FUNC_ENTER_COMMON_NOERR(func_name, H5_IS_API(#func_name)); \
+#define FUNC_ENTER_API_NOINIT_NOERR_NOFS {{ \
+ FUNC_ENTER_API_VARS \
+ FUNC_ENTER_COMMON_NOERR(H5_IS_API(FUNC)); \
FUNC_ENTER_API_THREADSAFE; \
- BEGIN_MPE_LOG(func_name); \
+ BEGIN_MPE_LOG \
{
/* Note: this macro only works when there's _no_ interface initialization routine for the module */
-#define FUNC_ENTER_NOAPI_INIT(func_name,err) \
+#define FUNC_ENTER_NOAPI_INIT(err) \
/* Initialize the interface, if appropriate */ \
H5_INTERFACE_INIT(err) \
\
/* Push the name of this function on the function stack */ \
- H5_PUSH_FUNC(#func_name)
+ H5_PUSH_FUNC
/* Use this macro for all "normal" non-API functions */
-#define FUNC_ENTER_NOAPI(func_name,err) { \
- FUNC_ENTER_COMMON(func_name, !H5_IS_API(#func_name)); \
- FUNC_ENTER_NOAPI_INIT(func_name,err) \
+#define FUNC_ENTER_NOAPI(err) { \
+ FUNC_ENTER_COMMON(!H5_IS_API(FUNC)); \
+ FUNC_ENTER_NOAPI_INIT(err) \
{
/* Use this macro for all non-API functions, which propagate errors, but don't issue them */
-#define FUNC_ENTER_NOAPI_NOERR(func_name,err) { \
- FUNC_ENTER_COMMON_NOERR(func_name, !H5_IS_API(#func_name)); \
- FUNC_ENTER_NOAPI_INIT(func_name,err) \
- {
-
-/* Use this macro for all non-API functions which don't issue errors */
-#define FUNC_ENTER_NOAPI_NOFUNC(func_name) { \
- FUNC_ENTER_COMMON_NOFUNC(func_name,!H5_IS_API(#func_name)); \
- FUNC_ENTER_NOAPI_INIT(func_name,err) \
+#define FUNC_ENTER_NOAPI_NOERR { \
+ FUNC_ENTER_COMMON_NOERR(!H5_IS_API(FUNC)); \
+ FUNC_ENTER_NOAPI_INIT(-) \
{
/*
@@ -1907,9 +1905,9 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
* - functions which are called during library shutdown, since we don't
* want to re-initialize the library.
*/
-#define FUNC_ENTER_NOAPI_NOINIT(func_name) { \
- FUNC_ENTER_COMMON(func_name, !H5_IS_API(#func_name)); \
- H5_PUSH_FUNC(#func_name) \
+#define FUNC_ENTER_NOAPI_NOINIT { \
+ FUNC_ENTER_COMMON(!H5_IS_API(FUNC)); \
+ H5_PUSH_FUNC \
{
/*
@@ -1921,26 +1919,9 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
* want to re-initialize the library.
* - functions that propagate, but don't issue errors
*/
-#define FUNC_ENTER_NOAPI_NOINIT_NOERR(func_name) { \
- FUNC_ENTER_COMMON_NOERR(func_name, !H5_IS_API(#func_name)); \
- H5_PUSH_FUNC(#func_name) \
- {
-
-/*
- * Use this macro for non-API functions which fall into these categories:
- * - static functions, since they must be called from a function in the
- * interface, the library and interface must already be
- * initialized.
- * - functions which are called during library shutdown, since we don't
- * want to re-initialize the library.
- *
- * This macro is used for functions which fit the above categories _and_
- * also don't use the 'FUNC' variable (i.e. don't push errors on the error stack)
- *
- */
-#define FUNC_ENTER_NOAPI_NOINIT_NOFUNC(func_name) { \
- FUNC_ENTER_COMMON_NOFUNC(func_name,!H5_IS_API(#func_name)); \
- H5_PUSH_FUNC(#func_name) \
+#define FUNC_ENTER_NOAPI_NOINIT_NOERR { \
+ FUNC_ENTER_COMMON_NOERR(!H5_IS_API(FUNC)); \
+ H5_PUSH_FUNC \
{
/*
@@ -1952,29 +1933,29 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
* also don't use the 'FUNC' variable (i.e. don't push errors on the error stack)
*
*/
-#define FUNC_ENTER_NOAPI_NOFUNC_NOFS(func_name) { \
- FUNC_ENTER_COMMON_NOFUNC(func_name,!H5_IS_API(#func_name)); \
+#define FUNC_ENTER_NOAPI_NOERR_NOFS { \
+ FUNC_ENTER_COMMON_NOERR(!H5_IS_API(FUNC)); \
{
/* Use the following two macros as replacements for the FUNC_ENTER_NOAPI
* and FUNC_ENTER_NOAPI_NOINIT macros when the function needs to set
* up a metadata tag. */
-#define FUNC_ENTER_NOAPI_TAG(func_name, dxpl_id, tag, err) { \
+#define FUNC_ENTER_NOAPI_TAG(dxpl_id, tag, err) { \
haddr_t prev_tag = HADDR_UNDEF; \
hid_t tag_dxpl_id = dxpl_id; \
- FUNC_ENTER_COMMON(func_name, !H5_IS_API(#func_name)); \
+ FUNC_ENTER_COMMON(!H5_IS_API(FUNC)); \
if(H5AC_tag(tag_dxpl_id, tag, &prev_tag)<0) \
HGOTO_ERROR(H5E_CACHE, H5E_CANTTAG, err, "unable to apply metadata tag") \
- FUNC_ENTER_NOAPI_INIT(func_name,err) \
+ FUNC_ENTER_NOAPI_INIT(err) \
{
-#define FUNC_ENTER_NOAPI_NOINIT_TAG(func_name, dxpl_id, tag, err) { \
+#define FUNC_ENTER_NOAPI_NOINIT_TAG(dxpl_id, tag, err) { \
haddr_t prev_tag = HADDR_UNDEF; \
hid_t tag_dxpl_id = dxpl_id; \
- FUNC_ENTER_COMMON(func_name, !H5_IS_API(#func_name)); \
+ FUNC_ENTER_COMMON(!H5_IS_API(FUNC)); \
if(H5AC_tag(tag_dxpl_id, tag, &prev_tag)<0) \
HGOTO_ERROR(H5E_CACHE, H5E_CANTTAG, err, "unable to apply metadata tag") \
- H5_PUSH_FUNC(#func_name) \
+ H5_PUSH_FUNC \
{
@@ -1992,7 +1973,7 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
H5_API_SET_CANCEL
#define FUNC_LEAVE_API(ret_value) \
- FINISH_MPE_LOG; \
+ FINISH_MPE_LOG \
H5TRACE_RETURN(ret_value); \
H5_POP_FUNC \
if(err_occurred) \
@@ -2004,7 +1985,7 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
/* Use this macro to match the FUNC_ENTER_API_NOFS macro */
#define FUNC_LEAVE_API_NOFS(ret_value) \
- FINISH_MPE_LOG; \
+ FINISH_MPE_LOG \
H5TRACE_RETURN(ret_value); \
FUNC_LEAVE_API_THREADSAFE \
return(ret_value); \
@@ -2046,41 +2027,6 @@ static herr_t H5_INTERFACE_INIT_FUNC(void);
/* Revisions to FUNC_ENTER/LEAVE Macros */
/****************************************/
-/* `S' is the name of a function which is being tested to check if it's */
-/* a public API function */
-#define H5_IS_PUB(S) (((HDisdigit(S[1]) || HDisupper(S[1])) && HDislower(S[2])) || \
- ((HDisdigit(S[2]) || HDisupper(S[2])) && HDislower(S[3])) || \
- (!S[4] || ((HDisdigit(S[3]) || HDisupper(S[3])) && HDislower(S[4]))))
-
-/* `S' is the name of a function which is being tested to check if it's */
-/* a private library function */
-#define H5_IS_PRIV(S) (((HDisdigit(S[1]) || HDisupper(S[1])) && '_' == S[2] && HDislower(S[3])) || \
- ((HDisdigit(S[2]) || HDisupper(S[2])) && '_' == S[3] && HDislower(S[4])) || \
- ((HDisdigit(S[3]) || HDisupper(S[3])) && '_' == S[4] && HDislower(S[5])))
-
-/* `S' is the name of a function which is being tested to check if it's */
-/* a package private function */
-#define H5_IS_PKG(S) (((HDisdigit(S[1]) || HDisupper(S[1])) && '_' == S[2] && '_' == S[3] && HDislower(S[4])) || \
- ((HDisdigit(S[2]) || HDisupper(S[2])) && '_' == S[3] && '_' == S[4] && HDislower(S[5])) || \
- ((HDisdigit(S[3]) || HDisupper(S[3])) && '_' == S[4] && '_' == S[5] && HDislower(S[6])))
-
-#ifndef NDEBUG
-#define FUNC_ENTER_NAME_CHECK(asrt) \
- { \
- static hbool_t func_check = FALSE; \
- \
- if(!func_check) { \
- /* Check function naming status */ \
- HDassert(asrt); \
- \
- /* Don't check again */ \
- func_check = TRUE; \
- } /* end if */ \
- } /* end scope */
-#else /* NDEBUG */
-#define FUNC_ENTER_NAME_CHECK(asrt)
-#endif /* NDEBUG */
-
/* Macros for referencing package initialization symbols */
#define H5_PACKAGE_INIT_VAR(x) H5_GLUE3(H5_, x, _init_g)
#define H5_PACKAGE_INIT_FUNC(x) H5_GLUE(x, __pkg_init)
@@ -2120,18 +2066,9 @@ H5_DECLARE_PKG_FUNC(H5_MY_PKG_INIT, H5_MY_PKG)
/* API re-entrance variable */
extern hbool_t H5_api_entered_g; /* Has library already been entered through API? */
-/* Use FUNCNAME to safely handle variations of C99 __func__ keyword handling */
-#ifdef H5_HAVE_C99_FUNC
-#define FUNCNAME __func__
-#elif defined(H5_HAVE_FUNCTION)
-#define FUNCNAME __FUNCTION__
-#else
-#error "We need __func__ or __FUNCTION__ to test function names!"
-#endif
-
/* Macros for entering different scopes of routines */
#define H5_PACKAGE_ENTER(pkg, pkg_init, init) \
- FUNC_ENTER_NAME_CHECK(H5_IS_PKG(FUNCNAME)) \
+ FUNC_ENTER_CHECK_NAME(H5_IS_PKG(FUNC)) \
\
/* The library should be initialized already */ \
HDassert(H5_INIT_GLOBAL); \
@@ -2141,13 +2078,13 @@ extern hbool_t H5_api_entered_g; /* Has library already been entered through
H5_GLUE4(H5_CHECK_PACKAGE_INIT_, init, _, pkg_init)(pkg) \
\
/* Push the name of this function on the function stack */ \
- H5_PUSH_FUNC(FUNCNAME) \
+ H5_PUSH_FUNC \
\
/* Enter scope for this type of function */ \
{
#define H5_PRIVATE_ENTER(pkg, pkg_init) \
- FUNC_ENTER_NAME_CHECK(H5_IS_PRIV(FUNCNAME)) \
+ FUNC_ENTER_CHECK_NAME(H5_IS_PRIV(FUNC)) \
\
/* The library should be initialized already */ \
HDassert(H5_INIT_GLOBAL); \
@@ -2156,15 +2093,15 @@ extern hbool_t H5_api_entered_g; /* Has library already been entered through
H5_GLUE3(H5_PKG_, pkg_init, _INIT)(pkg) \
\
/* Push the name of this function on the function stack */ \
- H5_PUSH_FUNC(FUNCNAME) \
+ H5_PUSH_FUNC \
\
/* Enter scope for this type of function */ \
{{
#define H5_PUBLIC_ENTER(pkg, pkg_init) \
- FUNC_ENTER_API_VARS(FUNCNAME) \
+ FUNC_ENTER_API_VARS \
FUNC_ENTER_API_THREADSAFE; \
- FUNC_ENTER_NAME_CHECK(H5_IS_PUB(FUNCNAME)) \
+ FUNC_ENTER_CHECK_NAME(H5_IS_PUB(FUNC)) \
\
/* Clear thread error stack when entering public functions */ \
H5E_clear_stack(NULL); \
@@ -2188,10 +2125,10 @@ extern hbool_t H5_api_entered_g; /* Has library already been entered through
H5_api_entered_g = TRUE; \
\
/* Start logging MPI's MPE information */ \
- BEGIN_MPE_LOG(FUNCNAME) \
+ BEGIN_MPE_LOG \
\
/* Push the name of this function on the function stack */ \
- H5_PUSH_FUNC(FUNCNAME) \
+ H5_PUSH_FUNC \
\
/* Enter scope for this type of function */ \
{{{
@@ -2284,7 +2221,7 @@ func_init_failed: \
H5_POP_FUNC \
\
/* Finish the MPE tracing info */ \
- FINISH_MPE_LOG; \
+ FINISH_MPE_LOG \
\
/* Check for leaving API routine */ \
HDassert(H5_api_entered_g); \