From owner-freebsd-current Fri Mar 27 13:40:36 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id NAA19319 for freebsd-current-outgoing; Fri, 27 Mar 1998 13:40:36 -0800 (PST) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from hda.hda.com (hda-bicnet.bicnet.net [208.220.66.37]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id NAA19229 for ; Fri, 27 Mar 1998 13:40:19 -0800 (PST) (envelope-from dufault@hda.hda.com) Received: (from dufault@localhost) by hda.hda.com (8.8.5/8.8.5) id QAA24624; Fri, 27 Mar 1998 16:38:31 -0500 (EST) From: Peter Dufault Message-Id: <199803272138.QAA24624@hda.hda.com> Subject: More on posix level In-Reply-To: <199803272102.QAA24520@hda.hda.com> from Peter Dufault at "Mar 27, 98 04:01:59 pm" To: dufault@hda.com (Peter Dufault) Date: Fri, 27 Mar 1998 16:38:30 -0500 (EST) Cc: steve@igor.haunt.com, current@FreeBSD.ORG X-Mailer: ELM [version 2.4ME+ PL25 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG In the code about to be committed, setting _POSIX_C_SOURCE ahead of _POSIX_VERSION is going to hide all POSIX extensions for a date than _POSIX_VERSION, whereas leaving _POSIX_C_SOURCE undefined will allow them to show up. My rationale: Leaving _POSIX_C_SOURCE undefined lets the system do what it wants in the program name space, and traditionally BSD lets extensions show up. Setting _POSIX_C_SOURCE is supposed to hide everything except the POSIX and C Standard symbols for that version. Though I think the standard doesn't specifically talk about what happens when _POSIX_C_SOURCE is set "in the future", in my opinion program behavior shouldn't change, so if _POSIX_VERSION is 199009L and Khoros sets _POSIX_C_SOURCE to 199309L the system feature set should not change as new features are added and so nothing greater than 199009L will show up. If FreeBSD has extensions from 199309L that Khoros wants to use, setting _POSIX_C_SOURCE "in the future" will hide them. This problem goes away when _POSIX_VERSION bumps to 199390L. Clear as mud? Does everyone agree this is correct? What do other systems do? Peter -- Peter Dufault (dufault@hda.com) Realtime development, Machine control, HD Associates, Inc. Safety critical systems, Agency approval To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message