don't shadow functions with macros in C++

C++ programmers typically expect something like "::function(x,y)" to work
and may be surprised to find that "(::function)(x,y)" is actually required
due to the headers declaring a macro version of some standard functions.

We already omit function-like macros for C++ in most cases where there is
a real function available. This commit extends this to the remaining
function-like macros which have a real function version.
This commit is contained in:
Bobby Bingham
2014-12-08 20:18:12 -06:00
committed by Rich Felker
parent 8f7bc690f0
commit f164875a84
3 changed files with 6 additions and 0 deletions

View File

@ -84,7 +84,9 @@ __attribute__((const))
pthread_t pthread_self(void);
int pthread_equal(pthread_t, pthread_t);
#ifndef __cplusplus
#define pthread_equal(x,y) ((x)==(y))
#endif
int pthread_setcancelstate(int, int *);
int pthread_setcanceltype(int, int *);