xref: /titanic_50/usr/src/lib/crt/common/values-xpg6.c (revision cc31cba96d9862a1075a8ec47d6149e04c7ad62d)
1*cc31cba9SRichard Lowe /*
2*cc31cba9SRichard Lowe  * CDDL HEADER START
3*cc31cba9SRichard Lowe  *
4*cc31cba9SRichard Lowe  * The contents of this file are subject to the terms of the
5*cc31cba9SRichard Lowe  * Common Development and Distribution License, Version 1.0 only
6*cc31cba9SRichard Lowe  * (the "License").  You may not use this file except in compliance
7*cc31cba9SRichard Lowe  * with the License.
8*cc31cba9SRichard Lowe  *
9*cc31cba9SRichard Lowe  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*cc31cba9SRichard Lowe  * or http://www.opensolaris.org/os/licensing.
11*cc31cba9SRichard Lowe  * See the License for the specific language governing permissions
12*cc31cba9SRichard Lowe  * and limitations under the License.
13*cc31cba9SRichard Lowe  *
14*cc31cba9SRichard Lowe  * When distributing Covered Code, include this CDDL HEADER in each
15*cc31cba9SRichard Lowe  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*cc31cba9SRichard Lowe  * If applicable, add the following below this CDDL HEADER, with the
17*cc31cba9SRichard Lowe  * fields enclosed by brackets "[]" replaced with your own identifying
18*cc31cba9SRichard Lowe  * information: Portions Copyright [yyyy] [name of copyright owner]
19*cc31cba9SRichard Lowe  *
20*cc31cba9SRichard Lowe  * CDDL HEADER END
21*cc31cba9SRichard Lowe  */
22*cc31cba9SRichard Lowe /*
23*cc31cba9SRichard Lowe  * Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
24*cc31cba9SRichard Lowe  * Use is subject to license terms.
25*cc31cba9SRichard Lowe  */
26*cc31cba9SRichard Lowe 
27*cc31cba9SRichard Lowe /*
28*cc31cba9SRichard Lowe  * __xpg6 (C99/SUSv3) was first introduced in Solaris 10.
29*cc31cba9SRichard Lowe  *
30*cc31cba9SRichard Lowe  * This file is NOT linked into libc.  See xpg6.c.
31*cc31cba9SRichard Lowe  * This value is linked into an application when the application is
32*cc31cba9SRichard Lowe  * requesting conforming C99/SUSv3 behavior.  This is usually done
33*cc31cba9SRichard Lowe  * with the c99 utility.
34*cc31cba9SRichard Lowe  *
35*cc31cba9SRichard Lowe  * __xpg6 is used to control certain behaviors between the C99 standard,
36*cc31cba9SRichard Lowe  * the SUSv3 standard, and Solaris.  More explanation in inc/xpg6.h.
37*cc31cba9SRichard Lowe  * The XPG6 C compiler utility (c99) will add an object file that contains an
38*cc31cba9SRichard Lowe  * alternate definition for __xpg6.  The symbol interposition provided
39*cc31cba9SRichard Lowe  * by the linker will allow libc to find that symbol instead.
40*cc31cba9SRichard Lowe  *
41*cc31cba9SRichard Lowe  * Possible settings are available and documented in inc/xpg6.h.
42*cc31cba9SRichard Lowe  */
43*cc31cba9SRichard Lowe 
44*cc31cba9SRichard Lowe /*
45*cc31cba9SRichard Lowe  * This setting enables strictly conforming C99/SUSv3 behavior.
46*cc31cba9SRichard Lowe  */
47*cc31cba9SRichard Lowe 
48*cc31cba9SRichard Lowe #include "xpg6.h"
49*cc31cba9SRichard Lowe 
50*cc31cba9SRichard Lowe unsigned int __xpg6 = _C99SUSv3_mode_ON;
51*cc31cba9SRichard Lowe 
52*cc31cba9SRichard Lowe /*
53*cc31cba9SRichard Lowe  * Also turn on XPG4 mode.
54*cc31cba9SRichard Lowe  */
55*cc31cba9SRichard Lowe int __xpg4 = 1;
56