The D compiler normally predefines several versions that indicate what type of system and machine is in use. They are obviously different on each target supported by GCC.
AArch64Version relating to the AArch64 family of processors.
AndroidVersion relating to the Android platform.
ARMARM_HardFloatARM_SoftFloatARM_SoftFPARM_ThumbVersions relating to the ARM family of processors.
CygwinVersion relating to the Cygwin environment.
darwinDeprecated; use OSX instead.
DragonFlyBSDVersions relating to DragonFlyBSD systems.
FreeBSDFreeBSD_9FreeBSD_10FreeBSD_11FreeBSD_...Versions relating to FreeBSD systems. The FreeBSD major version number is inferred from the target triplet.
HPPAHPPA64Versions relating to the HPPA family of processors.
HurdVersion relating to GNU Hurd systems.
linuxVersion relating to Linux systems.
MinGWVersion relating to the MinGW environment.
MIPS32MIPS64MIPS_EABIMIPS_HardFloatMIPS_N32MIPS_N64MIPS_O32MIPS_O64MIPS_SoftFloatVersions relating to the MIPS family of processors.
NetBSDVersion relating to NetBSD systems.
OpenBSDVersion relating to OpenBSD systems.
OSXVersion relating to OSX systems.
PosixVersion relating to POSIX systems (includes Linux, FreeBSD, OSX, Solaris, etc).
PPCPPC64PPC_HardFloatPPC_SoftFloatVersions relating to the PowerPC family of processors.
RISCV32RISCV64Versions relating to the RISC-V family of processors.
S390SystemZVersions relating to the S/390 and System Z family of processors.
S390XDeprecated; use SystemZ instead.
SolarisVersions relating to Solaris systems.
SPARCSPARC64SPARC_HardFloatSPARC_SoftFloatSPARC_V8PlusVersions relating to the SPARC family of processors.
ThumbDeprecated; use ARM_Thumb instead.
D_X32X86X86_64Versions relating to the x86-32 and x86-64 family of processors.
WindowsWin32Win64Versions relating to Microsoft Windows systems.