URL:
<http://savannah.gnu.org/bugs/?func=detailitem&item_id=16476>
Summary: Inconsistent function macros - again
Project: make
Submitted by: jerker_back
Submitted on: Monday 05/01/06 at 12:50
Severity: 3 - Normal
Item Group: Bug
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Component Version: 3.81
Operating System: Any
Fixed Release: None
_______________________________________________________
Details:
I'm slightly reluctant to mention this again, since you stated that a major
change is planned to the next release. Meanwhile, I encountered the following
inconsistencies when defining the function prototype macros (WINDOWS32 visavi
HAVE_ANSI_COMPILER):
fnmatch.h(26) :
#if defined __cplusplus || (defined __STDC__ && __STDC__) || defined
WINDOWS32
should be:
#if defined __cplusplus || (defined __STDC__ && __STDC__) || defined
HAVE_ANSI_COMPILER
fnmatch.h(40) : the same
glob.h(26) : the same
hash.h(25) : the same
make.h(43) : #if defined (__cplusplus) || defined (__STDC__)
should be:
#if defined (__cplusplus) || defined (__STDC__) || defined
HAVE_ANSI_COMPILER
I assume that WINDOWS32 is for MS compiler support - not for WIN32 specific
code. I also see that changes have been made in the CVS source, at least in
make.h - so take this for what it is.
If I may suggest:
Remove the WINDOWS32 conditional all together - it is not needed.
For WIN32 specific parts there are already 2 constants defined:
_WIN32 - internal constant defined for WIN32 binaries
WIN32 - defined in the Windows SDK for the WIN32 API
Both is defined and needed when compiling a WIN32 GNU make
Note:
__STDC__ is reserved for strict posix compliance (or strict ANSI C as they
state) in the MS compiler. It is somewhat safe (at least possible) to
manually define it when compiling for Interix, but not when using the MS C
runtime library.
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?func=detailitem&item_id=16476>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
_______________________________________________
Bug-make mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-make