Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!rutgers!brl-adm!brl-smoke!gwyn From: gwyn@brl-smoke.UUCP Newsgroups: comp.lang.c Subject: Re: pre#defines for system and machine Message-ID: <5573@brl-smoke.ARPA> Date: Wed, 28-Jan-87 01:40:03 EST Article-I.D.: brl-smok.5573 Posted: Wed Jan 28 01:40:03 1987 Date-Received: Thu, 29-Jan-87 05:49:09 EST References: <2144@brl-adm.ARPA> <5497@brl-smoke.ARPA> <3952@utcsri.UUCP> <556@omssw2.UUCP> Reply-To: gwyn@brl.arpa (Doug Gwyn (VLD/VMB) ) Organization: Ballistic Research Lab (BRL), APG, MD. Lines: 13 The point about using lower-level "feature defines" like #ifdef TCGETA is well taken, but there is also use for higher-level non-feature conditionalization. For example, my most common conditional seems to be #if BRL_System_V_emulation_really_running_on_a_4BSD_kernel (or equivalent). I know of no reliable way to test combinations of features to determine high-level properties like that. I could also really use #if_header_exists "header_name" but I doubt we could come up with a good way to wedge this into C portably. However, there might be hope; a small subgroup of X3J11 is working on defining minimum syntax for portable filenames for use in #include "header_name" directives. Several of us feel that that is needed to plug a major hole in the facilities a maximally-portable C application can rely on.