Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 Feb 2013 23:55:27 +0000 (UTC)
From:      Attilio Rao <attilio@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r246572 - in user/attilio/vmcontention: bin/ps bin/setfacl bin/sh contrib/libc++/include contrib/libc++/src lib/libc/sys libexec/rtld-elf/powerpc64 sbin/ifconfig share/man/man5 share/ma...
Message-ID:  <201302082355.r18NtRdc092624@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: attilio
Date: Fri Feb  8 23:55:26 2013
New Revision: 246572
URL: http://svnweb.freebsd.org/changeset/base/246572

Log:
  MFC

Modified:
  user/attilio/vmcontention/bin/ps/ps.1
  user/attilio/vmcontention/bin/setfacl/setfacl.1
  user/attilio/vmcontention/bin/sh/jobs.c
  user/attilio/vmcontention/bin/sh/mksyntax.c
  user/attilio/vmcontention/bin/sh/parser.h
  user/attilio/vmcontention/contrib/libc++/include/__config
  user/attilio/vmcontention/contrib/libc++/include/algorithm
  user/attilio/vmcontention/contrib/libc++/include/array
  user/attilio/vmcontention/contrib/libc++/include/atomic
  user/attilio/vmcontention/contrib/libc++/include/cmath
  user/attilio/vmcontention/contrib/libc++/include/functional
  user/attilio/vmcontention/contrib/libc++/include/future
  user/attilio/vmcontention/contrib/libc++/include/istream
  user/attilio/vmcontention/contrib/libc++/include/iterator
  user/attilio/vmcontention/contrib/libc++/include/limits
  user/attilio/vmcontention/contrib/libc++/include/locale
  user/attilio/vmcontention/contrib/libc++/include/memory
  user/attilio/vmcontention/contrib/libc++/include/ostream
  user/attilio/vmcontention/contrib/libc++/include/random
  user/attilio/vmcontention/contrib/libc++/include/regex
  user/attilio/vmcontention/contrib/libc++/include/string
  user/attilio/vmcontention/contrib/libc++/include/type_traits
  user/attilio/vmcontention/contrib/libc++/include/vector
  user/attilio/vmcontention/contrib/libc++/src/chrono.cpp
  user/attilio/vmcontention/contrib/libc++/src/debug.cpp
  user/attilio/vmcontention/contrib/libc++/src/exception.cpp
  user/attilio/vmcontention/contrib/libc++/src/future.cpp
  user/attilio/vmcontention/contrib/libc++/src/hash.cpp
  user/attilio/vmcontention/contrib/libc++/src/locale.cpp
  user/attilio/vmcontention/contrib/libc++/src/string.cpp
  user/attilio/vmcontention/contrib/libc++/src/thread.cpp
  user/attilio/vmcontention/lib/libc/sys/ptrace.2
  user/attilio/vmcontention/libexec/rtld-elf/powerpc64/reloc.c
  user/attilio/vmcontention/sbin/ifconfig/ifieee80211.c
  user/attilio/vmcontention/share/man/man5/group.5
  user/attilio/vmcontention/share/man/man9/timeout.9
  user/attilio/vmcontention/sys/boot/usb/Makefile.test
  user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_vfsops.h
  user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c
  user/attilio/vmcontention/sys/cddl/dev/dtrace/dtrace_ioctl.c
  user/attilio/vmcontention/sys/conf/NOTES
  user/attilio/vmcontention/sys/dev/ath/if_ath_tx_ht.c
  user/attilio/vmcontention/sys/dev/bxe/if_bxe.c
  user/attilio/vmcontention/sys/dev/e1000/if_em.c
  user/attilio/vmcontention/sys/dev/e1000/if_igb.c
  user/attilio/vmcontention/sys/dev/ixgbe/ixgbe.c
  user/attilio/vmcontention/sys/dev/ixgbe/ixv.c
  user/attilio/vmcontention/sys/dev/oce/oce_if.c
  user/attilio/vmcontention/sys/dev/usb/wlan/if_uath.c
  user/attilio/vmcontention/sys/dev/usb/wlan/if_upgt.c
  user/attilio/vmcontention/sys/fs/ext2fs/ext2_vfsops.c
  user/attilio/vmcontention/sys/fs/ext2fs/ext2fs.h
  user/attilio/vmcontention/sys/fs/ext2fs/inode.h
  user/attilio/vmcontention/sys/kern/kern_exec.c
  user/attilio/vmcontention/sys/kern/kern_exit.c
  user/attilio/vmcontention/sys/kern/kern_ktr.c
  user/attilio/vmcontention/sys/kern/kern_sig.c
  user/attilio/vmcontention/sys/kern/sys_process.c
  user/attilio/vmcontention/sys/net/if_var.h
  user/attilio/vmcontention/sys/net80211/ieee80211_action.c
  user/attilio/vmcontention/sys/net80211/ieee80211_ddb.c
  user/attilio/vmcontention/sys/net80211/ieee80211_hwmp.c
  user/attilio/vmcontention/sys/net80211/ieee80211_input.c
  user/attilio/vmcontention/sys/net80211/ieee80211_ioctl.h
  user/attilio/vmcontention/sys/net80211/ieee80211_mesh.c
  user/attilio/vmcontention/sys/net80211/ieee80211_mesh.h
  user/attilio/vmcontention/sys/net80211/ieee80211_node.h
  user/attilio/vmcontention/sys/net80211/ieee80211_output.c
  user/attilio/vmcontention/sys/ofed/drivers/net/mlx4/en_tx.c
  user/attilio/vmcontention/sys/sparc64/include/vmparam.h
  user/attilio/vmcontention/sys/sys/buf_ring.h
  user/attilio/vmcontention/sys/sys/proc.h
  user/attilio/vmcontention/sys/ufs/ufs/inode.h
  user/attilio/vmcontention/usr.bin/newgrp/newgrp.1
  user/attilio/vmcontention/usr.bin/newgrp/newgrp.c
  user/attilio/vmcontention/usr.bin/patch/util.c
  user/attilio/vmcontention/usr.sbin/bsdconfig/Makefile
  user/attilio/vmcontention/usr.sbin/sysrc/Makefile
Directory Properties:
  user/attilio/vmcontention/   (props changed)
  user/attilio/vmcontention/contrib/libc++/   (props changed)
  user/attilio/vmcontention/lib/libc/   (props changed)
  user/attilio/vmcontention/sbin/   (props changed)
  user/attilio/vmcontention/sys/   (props changed)
  user/attilio/vmcontention/sys/boot/   (props changed)
  user/attilio/vmcontention/sys/cddl/contrib/opensolaris/   (props changed)
  user/attilio/vmcontention/sys/conf/   (props changed)

Modified: user/attilio/vmcontention/bin/ps/ps.1
==============================================================================
--- user/attilio/vmcontention/bin/ps/ps.1	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/bin/ps/ps.1	Fri Feb  8 23:55:26 2013	(r246572)
@@ -29,7 +29,7 @@
 .\"     @(#)ps.1	8.3 (Berkeley) 4/18/94
 .\" $FreeBSD$
 .\"
-.Dd September 18, 2012
+.Dd February 7, 2013
 .Dt PS 1
 .Os
 .Sh NAME
@@ -323,6 +323,7 @@ the include file
 .It Dv "P_INMEM" Ta No "0x10000000" Ta "Loaded into memory"
 .It Dv "P_SWAPPINGOUT" Ta No "0x20000000" Ta "Process is being swapped out"
 .It Dv "P_SWAPPINGIN" Ta No "0x40000000" Ta "Process is being swapped in"
+.It Dv "P_PPTRACE" Ta No "0x80000000" Ta "Vforked child issued ptrace(PT_TRACEME)"
 .El
 .It Cm label
 The MAC label of the process.

Modified: user/attilio/vmcontention/bin/setfacl/setfacl.1
==============================================================================
--- user/attilio/vmcontention/bin/setfacl/setfacl.1	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/bin/setfacl/setfacl.1	Fri Feb  8 23:55:26 2013	(r246572)
@@ -26,7 +26,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd September 2, 2012
+.Dd February 8, 2013
 .Dt SETFACL 1
 .Os
 .Sh NAME
@@ -91,10 +91,16 @@ An error will be reported if any of
 the specified files cannot have a default entry (i.e.\&
 non-directories).  This option is not applicable to NFSv4 ACLs.
 .It Fl m Ar entries
-Modify the ACL entries on the specified files by adding new
-entries and modifying existing ACL entries with the ACL entries
-specified in
-.Ar entries .
+Modify the ACL on the specified file.
+New entries will be added, and existing entries will be modified
+according to the
+.Ar entries
+argument.
+For NFSv4 ACLs, it is recommended to use the
+.Fl a
+and
+.Fl x
+options instead.
 .It Fl M Ar file
 Modify the ACL entries on the specified files by adding new
 ACL entries and modifying existing ACL entries with the ACL
@@ -319,9 +325,9 @@ write_data
 execute
 .It p
 append_data
-.It d
-delete_child
 .It D
+delete_child
+.It d
 delete
 .It a
 read_attributes

Modified: user/attilio/vmcontention/bin/sh/jobs.c
==============================================================================
--- user/attilio/vmcontention/bin/sh/jobs.c	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/bin/sh/jobs.c	Fri Feb  8 23:55:26 2013	(r246572)
@@ -1030,7 +1030,7 @@ dowait(int mode, struct job *job)
 	int wflags;
 	int restore_sigchld;
 
-	TRACE(("dowait(%d) called\n", block));
+	TRACE(("dowait(%d, %p) called\n", mode, job));
 	restore_sigchld = 0;
 	if ((mode & DOWAIT_SIG) != 0) {
 		sigfillset(&mask);

Modified: user/attilio/vmcontention/bin/sh/mksyntax.c
==============================================================================
--- user/attilio/vmcontention/bin/sh/mksyntax.c	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/bin/sh/mksyntax.c	Fri Feb  8 23:55:26 2013	(r246572)
@@ -103,23 +103,16 @@ static char writer[] = "\
 
 static FILE *cfile;
 static FILE *hfile;
-static const char *syntax[513];
-static int base;
-static int size;	/* number of values which a char variable can have */
-static int nbits;	/* number of bits in a character */
 
-static void filltable(const char *);
-static void init(void);
+static void add_default(void);
+static void finish(void);
+static void init(const char *);
 static void add(const char *, const char *);
-static void print(const char *);
 static void output_type_macros(void);
 
 int
 main(int argc __unused, char **argv __unused)
 {
-	char c;
-	char d;
-	int sign;
 	int i;
 	char buf[80];
 	int pos;
@@ -136,27 +129,8 @@ main(int argc __unused, char **argv __un
 	fputs(writer, hfile);
 	fputs(writer, cfile);
 
-	/* Determine the characteristics of chars. */
-	c = -1;
-	sign = (c > 0) ? 0 : 1;
-	for (nbits = 1 ; ; nbits++) {
-		d = (1 << nbits) - 1;
-		if (d == c)
-			break;
-	}
-#if 0
-	printf("%s %d bit chars\n", sign? "signed" : "unsigned", nbits);
-#endif
-	if (nbits > 9) {
-		fputs("Characters can't have more than 9 bits\n", stderr);
-		exit(2);
-	}
-	size = (1 << nbits) + 1;
-	base = 1;
-	if (sign)
-		base += 1 << (nbits - 1);
-
 	fputs("#include <sys/cdefs.h>\n", hfile);
+	fputs("#include <limits.h>\n\n", hfile);
 
 	/* Generate the #define statements in the header file */
 	fputs("/* Syntax classes */\n", hfile);
@@ -177,8 +151,8 @@ main(int argc __unused, char **argv __un
 		fprintf(hfile, "/* %s */\n", is_entry[i].comment);
 	}
 	putc('\n', hfile);
-	fprintf(hfile, "#define SYNBASE %d\n", base);
-	fprintf(hfile, "#define PEOF %d\n\n", -base);
+	fputs("#define SYNBASE (1 - CHAR_MIN)\n", hfile);
+	fputs("#define PEOF -SYNBASE\n\n", hfile);
 	putc('\n', hfile);
 	fputs("#define BASESYNTAX (basesyntax + SYNBASE)\n", hfile);
 	fputs("#define DQSYNTAX (dqsyntax + SYNBASE)\n", hfile);
@@ -189,10 +163,13 @@ main(int argc __unused, char **argv __un
 	putc('\n', hfile);
 
 	/* Generate the syntax tables. */
+	fputs("#include \"parser.h\"\n", cfile);
 	fputs("#include \"shell.h\"\n", cfile);
 	fputs("#include \"syntax.h\"\n\n", cfile);
-	init();
+
 	fputs("/* syntax table used when not in quotes */\n", cfile);
+	init("basesyntax");
+	add_default();
 	add("\n", "CNL");
 	add("\\", "CBACK");
 	add("'", "CSQUOTE");
@@ -201,9 +178,11 @@ main(int argc __unused, char **argv __un
 	add("$", "CVAR");
 	add("}", "CENDVAR");
 	add("<>();&| \t", "CSPCL");
-	print("basesyntax");
-	init();
+	finish();
+
 	fputs("\n/* syntax table used when in double quotes */\n", cfile);
+	init("dqsyntax");
+	add_default();
 	add("\n", "CNL");
 	add("\\", "CBACK");
 	add("\"", "CENDQUOTE");
@@ -212,17 +191,21 @@ main(int argc __unused, char **argv __un
 	add("}", "CENDVAR");
 	/* ':/' for tilde expansion, '-^]' for [a\-x] pattern ranges */
 	add("!*?[]=~:/-^", "CCTL");
-	print("dqsyntax");
-	init();
+	finish();
+
 	fputs("\n/* syntax table used when in single quotes */\n", cfile);
+	init("sqsyntax");
+	add_default();
 	add("\n", "CNL");
 	add("\\", "CSBACK");
 	add("'", "CENDQUOTE");
 	/* ':/' for tilde expansion, '-^]' for [a\-x] pattern ranges */
 	add("!*?[]=~:/-^", "CCTL");
-	print("sqsyntax");
-	init();
+	finish();
+
 	fputs("\n/* syntax table used when in arithmetic */\n", cfile);
+	init("arisyntax");
+	add_default();
 	add("\n", "CNL");
 	add("\\", "CBACK");
 	add("`", "CBQUOTE");
@@ -231,100 +214,95 @@ main(int argc __unused, char **argv __un
 	add("}", "CENDVAR");
 	add("(", "CLP");
 	add(")", "CRP");
-	print("arisyntax");
-	filltable("0");
+	finish();
+
 	fputs("\n/* character classification table */\n", cfile);
+	init("is_type");
 	add("0123456789", "ISDIGIT");
 	add("abcdefghijklmnopqrstuvwxyz", "ISLOWER");
 	add("ABCDEFGHIJKLMNOPQRSTUVWXYZ", "ISUPPER");
 	add("_", "ISUNDER");
 	add("#?$!-*@", "ISSPECL");
-	print("is_type");
+	finish();
+
 	exit(0);
 }
 
 
-
 /*
- * Clear the syntax table.
+ * Output the header and declaration of a syntax table.
  */
 
 static void
-filltable(const char *dftval)
+init(const char *name)
 {
-	int i;
+	fprintf(hfile, "extern const char %s[];\n", name);
+	fprintf(cfile, "const char %s[SYNBASE + CHAR_MAX + 1] = {\n", name);
+}
+
 
-	for (i = 0 ; i < size ; i++)
-		syntax[i] = dftval;
+static void
+add_one(const char *key, const char *type)
+{
+	fprintf(cfile, "\t[SYNBASE + %s] = %s,\n", key, type);
 }
 
 
 /*
- * Initialize the syntax table with default values.
+ * Add default values to the syntax table.
  */
 
 static void
-init(void)
+add_default(void)
 {
-	filltable("CWORD");
-	syntax[0] = "CEOF";
-	syntax[base + CTLESC] = "CCTL";
-	syntax[base + CTLVAR] = "CCTL";
-	syntax[base + CTLENDVAR] = "CCTL";
-	syntax[base + CTLBACKQ] = "CCTL";
-	syntax[base + CTLBACKQ + CTLQUOTE] = "CCTL";
-	syntax[base + CTLARI] = "CCTL";
-	syntax[base + CTLENDARI] = "CCTL";
-	syntax[base + CTLQUOTEMARK] = "CCTL";
-	syntax[base + CTLQUOTEEND] = "CCTL";
+	add_one("PEOF",                "CEOF");
+	add_one("CTLESC",              "CCTL");
+	add_one("CTLVAR",              "CCTL");
+	add_one("CTLENDVAR",           "CCTL");
+	add_one("CTLBACKQ",            "CCTL");
+	add_one("CTLBACKQ + CTLQUOTE", "CCTL");
+	add_one("CTLARI",              "CCTL");
+	add_one("CTLENDARI",           "CCTL");
+	add_one("CTLQUOTEMARK",        "CCTL");
+	add_one("CTLQUOTEEND",         "CCTL");
 }
 
 
 /*
- * Add entries to the syntax table.
+ * Output the footer of a syntax table.
  */
 
 static void
-add(const char *p, const char *type)
+finish(void)
 {
-	while (*p)
-		syntax[*p++ + base] = type;
+	fputs("};\n", cfile);
 }
 
 
-
 /*
- * Output the syntax table.
+ * Add entries to the syntax table.
  */
 
 static void
-print(const char *name)
+add(const char *p, const char *type)
 {
-	int i;
-	int col;
-
-	fprintf(hfile, "extern const char %s[];\n", name);
-	fprintf(cfile, "const char %s[%d] = {\n", name, size);
-	col = 0;
-	for (i = 0 ; i < size ; i++) {
-		if (i == 0) {
-			fputs("      ", cfile);
-		} else if ((i & 03) == 0) {
-			fputs(",\n      ", cfile);
-			col = 0;
-		} else {
-			putc(',', cfile);
-			while (++col < 9 * (i & 03))
-				putc(' ', cfile);
+	for (; *p; ++p) {
+		char c = *p;
+		switch (c) {
+		case '\t': c = 't';  break;
+		case '\n': c = 'n';  break;
+		case '\'': c = '\''; break;
+		case '\\': c = '\\'; break;
+
+		default:
+			fprintf(cfile, "\t[SYNBASE + '%c'] = %s,\n", c, type);
+			continue;
 		}
-		fputs(syntax[i], cfile);
-		col += strlen(syntax[i]);
+		fprintf(cfile, "\t[SYNBASE + '\\%c'] = %s,\n", c, type);
 	}
-	fputs("\n};\n", cfile);
 }
 
 
-
 /*
  * Output character classification macros (e.g. is_digit).  If digits are
  * contiguous, we can test for them quickly.

Modified: user/attilio/vmcontention/bin/sh/parser.h
==============================================================================
--- user/attilio/vmcontention/bin/sh/parser.h	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/bin/sh/parser.h	Fri Feb  8 23:55:26 2013	(r246572)
@@ -39,7 +39,7 @@
 #define CTLENDVAR '\371'
 #define CTLBACKQ '\372'
 #define CTLQUOTE 01		/* ored with CTLBACKQ code if in quotes */
-/*	CTLBACKQ | CTLQUOTE == '\205' */
+/*	CTLBACKQ | CTLQUOTE == '\373' */
 #define	CTLARI	'\374'
 #define	CTLENDARI '\375'
 #define	CTLQUOTEMARK '\376'

Modified: user/attilio/vmcontention/contrib/libc++/include/__config
==============================================================================
--- user/attilio/vmcontention/contrib/libc++/include/__config	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/contrib/libc++/include/__config	Fri Feb  8 23:55:26 2013	(r246572)
@@ -66,6 +66,12 @@
 #  endif
 #endif  // _WIN32
 
+#ifdef __linux__
+#  if defined(__GNUC__) && _GNUC_VER >= 403
+#    define _LIBCP_HAS_IS_BASE_OF
+#  endif
+#endif
+
 #ifdef __sun__
 # include <sys/isa_defs.h>
 # ifdef _LITTLE_ENDIAN

Modified: user/attilio/vmcontention/contrib/libc++/include/algorithm
==============================================================================
--- user/attilio/vmcontention/contrib/libc++/include/algorithm	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/contrib/libc++/include/algorithm	Fri Feb  8 23:55:26 2013	(r246572)
@@ -1528,10 +1528,10 @@ copy(_InputIterator __first, _InputItera
 
 // copy_backward
 
-template <class _InputIterator, class _OutputIterator>
+template <class _BidirectionalIterator, class _OutputIterator>
 inline _LIBCPP_INLINE_VISIBILITY
 _OutputIterator
-__copy_backward(_InputIterator __first, _InputIterator __last, _OutputIterator __result)
+__copy_backward(_BidirectionalIterator __first, _BidirectionalIterator __last, _OutputIterator __result)
 {
     while (__first != __last)
         *--__result = *--__last;

Modified: user/attilio/vmcontention/contrib/libc++/include/array
==============================================================================
--- user/attilio/vmcontention/contrib/libc++/include/array	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/contrib/libc++/include/array	Fri Feb  8 23:55:26 2013	(r246572)
@@ -310,6 +310,7 @@ _LIBCPP_INLINE_VISIBILITY inline
 _Tp&
 get(array<_Tp, _Size>& __a) _NOEXCEPT
 {
+    static_assert(_Ip < _Size, "Index out of bounds in std::get<> (std::array)");
     return __a[_Ip];
 }
 
@@ -318,6 +319,7 @@ _LIBCPP_INLINE_VISIBILITY inline
 const _Tp&
 get(const array<_Tp, _Size>& __a) _NOEXCEPT
 {
+    static_assert(_Ip < _Size, "Index out of bounds in std::get<> (const std::array)");
     return __a[_Ip];
 }
 
@@ -328,6 +330,7 @@ _LIBCPP_INLINE_VISIBILITY inline
 _Tp&&
 get(array<_Tp, _Size>&& __a) _NOEXCEPT
 {
+    static_assert(_Ip < _Size, "Index out of bounds in std::get<> (std::array &&)");
     return _VSTD::move(__a[_Ip]);
 }
 

Modified: user/attilio/vmcontention/contrib/libc++/include/atomic
==============================================================================
--- user/attilio/vmcontention/contrib/libc++/include/atomic	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/contrib/libc++/include/atomic	Fri Feb  8 23:55:26 2013	(r246572)
@@ -33,6 +33,7 @@ template <class T> T kill_dependency(T y
 
 // lock-free property
 
+#define ATOMIC_BOOL_LOCK_FREE unspecified
 #define ATOMIC_CHAR_LOCK_FREE unspecified
 #define ATOMIC_CHAR16_T_LOCK_FREE unspecified
 #define ATOMIC_CHAR32_T_LOCK_FREE unspecified
@@ -41,6 +42,7 @@ template <class T> T kill_dependency(T y
 #define ATOMIC_INT_LOCK_FREE unspecified
 #define ATOMIC_LONG_LOCK_FREE unspecified
 #define ATOMIC_LLONG_LOCK_FREE unspecified
+#define ATOMIC_POINTER_LOCK_FREE unspecified
 
 // flag type and operations
 
@@ -472,6 +474,7 @@ template <class T>
 
 // Atomics for standard typedef types
 
+typedef atomic<bool>               atomic_bool;
 typedef atomic<char>               atomic_char;
 typedef atomic<signed char>        atomic_schar;
 typedef atomic<unsigned char>      atomic_uchar;
@@ -1454,6 +1457,7 @@ atomic_signal_fence(memory_order __m) _N
 
 // Atomics for standard typedef types
 
+typedef atomic<bool>               atomic_bool;
 typedef atomic<char>               atomic_char;
 typedef atomic<signed char>        atomic_schar;
 typedef atomic<unsigned char>      atomic_uchar;
@@ -1499,14 +1503,16 @@ typedef atomic<uintmax_t> atomic_uintmax
 
 // lock-free property
 
-#define ATOMIC_CHAR_LOCK_FREE 0
-#define ATOMIC_CHAR16_T_LOCK_FREE 0
-#define ATOMIC_CHAR32_T_LOCK_FREE 0
-#define ATOMIC_WCHAR_T_LOCK_FREE 0
-#define ATOMIC_SHORT_LOCK_FREE 0
-#define ATOMIC_INT_LOCK_FREE 0
-#define ATOMIC_LONG_LOCK_FREE 0
-#define ATOMIC_LLONG_LOCK_FREE 0
+#define ATOMIC_BOOL_LOCK_FREE      __GCC_ATOMIC_BOOL_LOCK_FREE
+#define ATOMIC_CHAR_LOCK_FREE      __GCC_ATOMIC_CHAR_LOCK_FREE
+#define ATOMIC_CHAR16_T_LOCK_FREE  __GCC_ATOMIC_CHAR16_T_LOCK_FREE
+#define ATOMIC_CHAR32_T_LOCK_FREE  __GCC_ATOMIC_CHAR32_T_LOCK_FREE
+#define ATOMIC_WCHAR_T_LOCK_FREE   __GCC_ATOMIC_WCHAR_T_LOCK_FREE
+#define ATOMIC_SHORT_LOCK_FREE     __GCC_ATOMIC_SHORT_LOCK_FREE
+#define ATOMIC_INT_LOCK_FREE       __GCC_ATOMIC_INT_LOCK_FREE
+#define ATOMIC_LONG_LOCK_FREE      __GCC_ATOMIC_LONG_LOCK_FREE
+#define ATOMIC_LLONG_LOCK_FREE     __GCC_ATOMIC_LLONG_LOCK_FREE
+#define ATOMIC_POINTER_LOCK_FREE   __GCC_ATOMIC_POINTER_LOCK_FREE
 
 #endif  //  !__has_feature(cxx_atomic)
 

Modified: user/attilio/vmcontention/contrib/libc++/include/cmath
==============================================================================
--- user/attilio/vmcontention/contrib/libc++/include/cmath	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/contrib/libc++/include/cmath	Fri Feb  8 23:55:26 2013	(r246572)
@@ -137,21 +137,21 @@ long double    tanhl(long double x);
 
 //  C99
 
-bool signbit(floating_point x);
+bool signbit(arithmetic x);
 
-int fpclassify(floating_point x);
+int fpclassify(arithmetic x);
 
-bool isfinite(floating_point x);
-bool isinf(floating_point x);
-bool isnan(floating_point x);
-bool isnormal(floating_point x);
-
-bool isgreater(floating_point x, floating_point y);
-bool isgreaterequal(floating_point x, floating_point y);
-bool isless(floating_point x, floating_point y);
-bool islessequal(floating_point x, floating_point y);
-bool islessgreater(floating_point x, floating_point y);
-bool isunordered(floating_point x, floating_point y);
+bool isfinite(arithmetic x);
+bool isinf(arithmetic x);
+bool isnan(arithmetic x);
+bool isnormal(arithmetic x);
+
+bool isgreater(arithmetic x, arithmetic y);
+bool isgreaterequal(arithmetic x, arithmetic y);
+bool isless(arithmetic x, arithmetic y);
+bool islessequal(arithmetic x, arithmetic y);
+bool islessgreater(arithmetic x, arithmetic y);
+bool isunordered(arithmetic x, arithmetic y);
 
 floating_point acosh (arithmetic x);
 float          acoshf(float x);
@@ -325,10 +325,10 @@ __libcpp_signbit(_A1 __x) _NOEXCEPT
 
 template <class _A1>
 inline _LIBCPP_INLINE_VISIBILITY
-typename std::enable_if<std::is_floating_point<_A1>::value, bool>::type
+typename std::enable_if<std::is_arithmetic<_A1>::value, bool>::type
 signbit(_A1 __x) _NOEXCEPT
 {
-    return __libcpp_signbit(__x);
+    return __libcpp_signbit((typename std::__promote<_A1>::type)__x);
 }
 
 #endif  // signbit
@@ -349,10 +349,10 @@ __libcpp_fpclassify(_A1 __x) _NOEXCEPT
 
 template <class _A1>
 inline _LIBCPP_INLINE_VISIBILITY
-typename std::enable_if<std::is_floating_point<_A1>::value, int>::type
+typename std::enable_if<std::is_arithmetic<_A1>::value, int>::type
 fpclassify(_A1 __x) _NOEXCEPT
 {
-    return __libcpp_fpclassify(__x);
+    return __libcpp_fpclassify((typename std::__promote<_A1>::type)__x);
 }
 
 #endif  // fpclassify
@@ -373,10 +373,10 @@ __libcpp_isfinite(_A1 __x) _NOEXCEPT
 
 template <class _A1>
 inline _LIBCPP_INLINE_VISIBILITY
-typename std::enable_if<std::is_floating_point<_A1>::value, bool>::type
+typename std::enable_if<std::is_arithmetic<_A1>::value, bool>::type
 isfinite(_A1 __x) _NOEXCEPT
 {
-    return __libcpp_isfinite(__x);
+    return __libcpp_isfinite((typename std::__promote<_A1>::type)__x);
 }
 
 #endif  // isfinite
@@ -397,10 +397,10 @@ __libcpp_isinf(_A1 __x) _NOEXCEPT
 
 template <class _A1>
 inline _LIBCPP_INLINE_VISIBILITY
-typename std::enable_if<std::is_floating_point<_A1>::value, bool>::type
+typename std::enable_if<std::is_arithmetic<_A1>::value, bool>::type
 isinf(_A1 __x) _NOEXCEPT
 {
-    return __libcpp_isinf(__x);
+    return __libcpp_isinf((typename std::__promote<_A1>::type)__x);
 }
 
 #endif  // isinf
@@ -421,10 +421,10 @@ __libcpp_isnan(_A1 __x) _NOEXCEPT
 
 template <class _A1>
 inline _LIBCPP_INLINE_VISIBILITY
-typename std::enable_if<std::is_floating_point<_A1>::value, bool>::type
+typename std::enable_if<std::is_arithmetic<_A1>::value, bool>::type
 isnan(_A1 __x) _NOEXCEPT
 {
-    return __libcpp_isnan(__x);
+    return __libcpp_isnan((typename std::__promote<_A1>::type)__x);
 }
 
 #endif  // isnan
@@ -445,10 +445,10 @@ __libcpp_isnormal(_A1 __x) _NOEXCEPT
 
 template <class _A1>
 inline _LIBCPP_INLINE_VISIBILITY
-typename std::enable_if<std::is_floating_point<_A1>::value, bool>::type
+typename std::enable_if<std::is_arithmetic<_A1>::value, bool>::type
 isnormal(_A1 __x) _NOEXCEPT
 {
-    return __libcpp_isnormal(__x);
+    return __libcpp_isnormal((typename std::__promote<_A1>::type)__x);
 }
 
 #endif  // isnormal
@@ -471,13 +471,14 @@ template <class _A1, class _A2>
 inline _LIBCPP_INLINE_VISIBILITY
 typename std::enable_if
 <
-    std::is_floating_point<_A1>::value &&
-    std::is_floating_point<_A2>::value,
+    std::is_arithmetic<_A1>::value &&
+    std::is_arithmetic<_A2>::value,
     bool
 >::type
 isgreater(_A1 __x, _A2 __y) _NOEXCEPT
 {
-    return __libcpp_isgreater(__x, __y);
+    typedef typename std::__promote<_A1, _A2>::type type;
+    return __libcpp_isgreater((type)__x, (type)__y);
 }
 
 #endif  // isgreater
@@ -500,13 +501,14 @@ template <class _A1, class _A2>
 inline _LIBCPP_INLINE_VISIBILITY
 typename std::enable_if
 <
-    std::is_floating_point<_A1>::value &&
-    std::is_floating_point<_A2>::value,
+    std::is_arithmetic<_A1>::value &&
+    std::is_arithmetic<_A2>::value,
     bool
 >::type
 isgreaterequal(_A1 __x, _A2 __y) _NOEXCEPT
 {
-    return __libcpp_isgreaterequal(__x, __y);
+    typedef typename std::__promote<_A1, _A2>::type type;
+    return __libcpp_isgreaterequal((type)__x, (type)__y);
 }
 
 #endif  // isgreaterequal
@@ -529,13 +531,14 @@ template <class _A1, class _A2>
 inline _LIBCPP_INLINE_VISIBILITY
 typename std::enable_if
 <
-    std::is_floating_point<_A1>::value &&
-    std::is_floating_point<_A2>::value,
+    std::is_arithmetic<_A1>::value &&
+    std::is_arithmetic<_A2>::value,
     bool
 >::type
 isless(_A1 __x, _A2 __y) _NOEXCEPT
 {
-    return __libcpp_isless(__x, __y);
+    typedef typename std::__promote<_A1, _A2>::type type;
+    return __libcpp_isless((type)__x, (type)__y);
 }
 
 #endif  // isless
@@ -558,13 +561,14 @@ template <class _A1, class _A2>
 inline _LIBCPP_INLINE_VISIBILITY
 typename std::enable_if
 <
-    std::is_floating_point<_A1>::value &&
-    std::is_floating_point<_A2>::value,
+    std::is_arithmetic<_A1>::value &&
+    std::is_arithmetic<_A2>::value,
     bool
 >::type
 islessequal(_A1 __x, _A2 __y) _NOEXCEPT
 {
-    return __libcpp_islessequal(__x, __y);
+    typedef typename std::__promote<_A1, _A2>::type type;
+    return __libcpp_islessequal((type)__x, (type)__y);
 }
 
 #endif  // islessequal
@@ -587,13 +591,14 @@ template <class _A1, class _A2>
 inline _LIBCPP_INLINE_VISIBILITY
 typename std::enable_if
 <
-    std::is_floating_point<_A1>::value &&
-    std::is_floating_point<_A2>::value,
+    std::is_arithmetic<_A1>::value &&
+    std::is_arithmetic<_A2>::value,
     bool
 >::type
 islessgreater(_A1 __x, _A2 __y) _NOEXCEPT
 {
-    return __libcpp_islessgreater(__x, __y);
+    typedef typename std::__promote<_A1, _A2>::type type;
+    return __libcpp_islessgreater((type)__x, (type)__y);
 }
 
 #endif  // islessgreater
@@ -616,13 +621,14 @@ template <class _A1, class _A2>
 inline _LIBCPP_INLINE_VISIBILITY
 typename std::enable_if
 <
-    std::is_floating_point<_A1>::value &&
-    std::is_floating_point<_A2>::value,
+    std::is_arithmetic<_A1>::value &&
+    std::is_arithmetic<_A2>::value,
     bool
 >::type
 isunordered(_A1 __x, _A2 __y) _NOEXCEPT
 {
-    return __libcpp_isunordered(__x, __y);
+    typedef typename std::__promote<_A1, _A2>::type type;
+    return __libcpp_isunordered((type)__x, (type)__y);
 }
 
 #endif  // isunordered

Modified: user/attilio/vmcontention/contrib/libc++/include/functional
==============================================================================
--- user/attilio/vmcontention/contrib/libc++/include/functional	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/contrib/libc++/include/functional	Fri Feb  8 23:55:26 2013	(r246572)
@@ -1088,7 +1088,7 @@ class _LIBCPP_VISIBLE function<_Rp(_ArgT
       public __function::__maybe_derive_from_binary_function<_Rp(_ArgTypes...)>
 {
     typedef __function::__base<_Rp(_ArgTypes...)> __base;
-    aligned_storage<3*sizeof(void*)>::type __buf_;
+    typename aligned_storage<3*sizeof(void*)>::type __buf_;
     __base* __f_;
 
     template <class _Fp>

Modified: user/attilio/vmcontention/contrib/libc++/include/future
==============================================================================
--- user/attilio/vmcontention/contrib/libc++/include/future	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/contrib/libc++/include/future	Fri Feb  8 23:55:26 2013	(r246572)
@@ -470,7 +470,11 @@ public:
         {return (__state_ & __constructed) || (__exception_ != nullptr);}
 
     _LIBCPP_INLINE_VISIBILITY
-    void __set_future_attached() {__state_ |= __future_attached;}
+    void __set_future_attached()
+    {
+        lock_guard<mutex> __lk(__mut_);
+        __state_ |= __future_attached;
+    }
     _LIBCPP_INLINE_VISIBILITY
     bool __has_future_attached() const {return __state_ & __future_attached;}
 
@@ -1753,7 +1757,7 @@ template<class _Rp, class ..._ArgTypes>
 class __packaged_task_function<_Rp(_ArgTypes...)>
 {
     typedef __packaged_task_base<_Rp(_ArgTypes...)> __base;
-    aligned_storage<3*sizeof(void*)>::type __buf_;
+    typename aligned_storage<3*sizeof(void*)>::type __buf_;
     __base* __f_;
 
 public:

Modified: user/attilio/vmcontention/contrib/libc++/include/istream
==============================================================================
--- user/attilio/vmcontention/contrib/libc++/include/istream	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/contrib/libc++/include/istream	Fri Feb  8 23:55:26 2013	(r246572)
@@ -1243,6 +1243,7 @@ template<class _CharT, class _Traits>
 streamsize
 basic_istream<_CharT, _Traits>::readsome(char_type* __s, streamsize __n)
 {
+    __gc_ = 0;
     streamsize __c = this->rdbuf()->in_avail();
     switch (__c)
     {

Modified: user/attilio/vmcontention/contrib/libc++/include/iterator
==============================================================================
--- user/attilio/vmcontention/contrib/libc++/include/iterator	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/contrib/libc++/include/iterator	Fri Feb  8 23:55:26 2013	(r246572)
@@ -822,9 +822,9 @@ private:
 public:
     _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR istreambuf_iterator() _NOEXCEPT : __sbuf_(0) {}
     _LIBCPP_INLINE_VISIBILITY istreambuf_iterator(istream_type& __s) _NOEXCEPT
-        : __sbuf_(__s.rdbuf()) {__test_for_eof();}
+        : __sbuf_(__s.rdbuf()) {}
     _LIBCPP_INLINE_VISIBILITY istreambuf_iterator(streambuf_type* __s) _NOEXCEPT
-        : __sbuf_(__s) {__test_for_eof();}
+        : __sbuf_(__s) {}
     _LIBCPP_INLINE_VISIBILITY istreambuf_iterator(const __proxy& __p) _NOEXCEPT
         : __sbuf_(__p.__sbuf_) {}
 

Modified: user/attilio/vmcontention/contrib/libc++/include/limits
==============================================================================
--- user/attilio/vmcontention/contrib/libc++/include/limits	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/contrib/libc++/include/limits	Fri Feb  8 23:55:26 2013	(r246572)
@@ -479,6 +479,53 @@ public:
 };
 
 template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::is_specialized;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<_Tp>::digits;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<_Tp>::digits10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<_Tp>::max_digits10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::is_signed;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::is_integer;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::is_exact;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<_Tp>::radix;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<_Tp>::min_exponent;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<_Tp>::min_exponent10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<_Tp>::max_exponent;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<_Tp>::max_exponent10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::has_infinity;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::has_quiet_NaN;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::has_signaling_NaN;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const float_denorm_style numeric_limits<_Tp>::has_denorm;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::has_denorm_loss;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::is_iec559;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::is_bounded;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::is_modulo;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::traps;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<_Tp>::tinyness_before;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const float_round_style numeric_limits<_Tp>::round_style;
+
+template <class _Tp>
 class _LIBCPP_VISIBLE numeric_limits<const _Tp>
     : private numeric_limits<_Tp>
 {
@@ -525,6 +572,53 @@ public:
 };
 
 template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::is_specialized;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const _Tp>::digits;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const _Tp>::digits10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const _Tp>::max_digits10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::is_signed;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::is_integer;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::is_exact;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const _Tp>::radix;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const _Tp>::min_exponent;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const _Tp>::min_exponent10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const _Tp>::max_exponent;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const _Tp>::max_exponent10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::has_infinity;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::has_quiet_NaN;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::has_signaling_NaN;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const float_denorm_style numeric_limits<const _Tp>::has_denorm;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::has_denorm_loss;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::is_iec559;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::is_bounded;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::is_modulo;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::traps;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const _Tp>::tinyness_before;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const float_round_style numeric_limits<const _Tp>::round_style;
+
+template <class _Tp>
 class _LIBCPP_VISIBLE numeric_limits<volatile _Tp>
     : private numeric_limits<_Tp>
 {
@@ -571,6 +665,53 @@ public:
 };
 
 template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::is_specialized;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<volatile _Tp>::digits;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<volatile _Tp>::digits10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<volatile _Tp>::max_digits10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::is_signed;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::is_integer;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::is_exact;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<volatile _Tp>::radix;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<volatile _Tp>::min_exponent;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<volatile _Tp>::min_exponent10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<volatile _Tp>::max_exponent;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<volatile _Tp>::max_exponent10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::has_infinity;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::has_quiet_NaN;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::has_signaling_NaN;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const float_denorm_style numeric_limits<volatile _Tp>::has_denorm;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::has_denorm_loss;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::is_iec559;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::is_bounded;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::is_modulo;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::traps;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<volatile _Tp>::tinyness_before;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const float_round_style numeric_limits<volatile _Tp>::round_style;
+
+template <class _Tp>
 class _LIBCPP_VISIBLE numeric_limits<const volatile _Tp>
     : private numeric_limits<_Tp>
 {
@@ -616,6 +757,53 @@ public:
     static _LIBCPP_CONSTEXPR const float_round_style round_style = __base::round_style;
 };
 
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::is_specialized;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const volatile _Tp>::digits;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const volatile _Tp>::digits10;
+template <class _Tp>
+    const int numeric_limits<const volatile _Tp>::max_digits10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::is_signed;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::is_integer;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::is_exact;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const volatile _Tp>::radix;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const volatile _Tp>::min_exponent;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const volatile _Tp>::min_exponent10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const volatile _Tp>::max_exponent;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const int numeric_limits<const volatile _Tp>::max_exponent10;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::has_infinity;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::has_quiet_NaN;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::has_signaling_NaN;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const float_denorm_style numeric_limits<const volatile _Tp>::has_denorm;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::has_denorm_loss;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::is_iec559;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::is_bounded;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::is_modulo;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::traps;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const bool numeric_limits<const volatile _Tp>::tinyness_before;
+template <class _Tp>
+    _LIBCPP_CONSTEXPR const float_round_style numeric_limits<const volatile _Tp>::round_style;
+
 _LIBCPP_END_NAMESPACE_STD
 
 #endif  // _LIBCPP_LIMITS

Modified: user/attilio/vmcontention/contrib/libc++/include/locale
==============================================================================
--- user/attilio/vmcontention/contrib/libc++/include/locale	Fri Feb  8 23:13:46 2013	(r246571)
+++ user/attilio/vmcontention/contrib/libc++/include/locale	Fri Feb  8 23:55:26 2013	(r246572)
@@ -354,7 +354,7 @@ size_t __mbsrtowcs_l(wchar_t *__dest, co
 #endif
 }
 
-_LIBCPP_ALWAYS_INLINE inline
+inline
 int __sprintf_l(char *__s, locale_t __l, const char *__format, ...) {
   va_list __va;
   va_start(__va, __format);
@@ -368,7 +368,7 @@ int __sprintf_l(char *__s, locale_t __l,
   return __res;
 }
 
-_LIBCPP_ALWAYS_INLINE inline
+inline
 int __snprintf_l(char *__s, size_t __n, locale_t __l, const char *__format, ...) {
   va_list __va;
   va_start(__va, __format);
@@ -382,7 +382,7 @@ int __snprintf_l(char *__s, size_t __n, 
   return __res;
 }
 
-_LIBCPP_ALWAYS_INLINE inline
+inline
 int __asprintf_l(char **__s, locale_t __l, const char *__format, ...) {
   va_list __va;
   va_start(__va, __format);
@@ -396,7 +396,7 @@ int __asprintf_l(char **__s, locale_t __
   return __res;

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201302082355.r18NtRdc092624>