d: Fix the build on hosts missing _MAX and _MAX macros.

gcc/d/ChangeLog:

2019-04-17  Iain Buclaw  <ibuclaw@gdcproject.org>

	* d-system.h (POSIX): Define unix as POSIX.
	(INT32_MAX, INT32_MIN, INT64_MIN, UINT32_MAX, UINT64_MAX): Provide
	fallback definitions.

From-SVN: r270403
This commit is contained in:
Iain Buclaw 2019-04-17 06:02:01 +00:00 committed by Iain Buclaw
parent 1b02929ad0
commit 347ef24548
2 changed files with 24 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2019-04-17 Iain Buclaw <ibuclaw@gdcproject.org>
* d-system.h (POSIX): Define unix as POSIX.
(INT32_MAX, INT32_MIN, INT64_MIN, UINT32_MAX, UINT64_MAX): Provide
fallback definitions.
2019-04-16 Iain Buclaw <ibuclaw@gdcproject.org>
* Make-lang.in (d.mostyclean): Clean idgen and impcvgen.

View File

@ -25,7 +25,7 @@
/* Used by the dmd front-end to determine if we have POSIX-style IO. */
#define POSIX (__linux__ || __GLIBC__ || __gnu_hurd__ || __APPLE__ \
|| __FreeBSD__ || __NetBSD__ || __OpenBSD__ || __DragonFly__ \
|| __sun)
|| __sun || __unix__)
/* Forward assert invariants to gcc_assert. */
#undef assert
@ -61,4 +61,21 @@
#define _mkdir(p) mkdir(p, 0)
#endif
/* Define any missing _MAX and _MIN macros. */
#ifndef INT32_MAX
# define INT32_MAX INTTYPE_MAXIMUM (int32_t)
#endif
#ifndef INT32_MIN
# define INT32_MIN INTTYPE_MINIMUM (int32_t)
#endif
#ifndef INT64_MIN
# define INT64_MIN INTTYPE_MINIMUM (int64_t)
#endif
#ifndef UINT32_MAX
# define UINT32_MAX INTTYPE_MAXIMUM (uint32_t)
#endif
#ifndef UINT64_MAX
# define UINT64_MAX INTTYPE_MAXIMUM (uint64_t)
#endif
#endif /* GCC_D_SYSTEM_H */