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