new file mode 100644
@@ -0,0 +1,10 @@
+#ifndef _X0_MBSTATE_T_H
+#define _X0_MBSTATE_T_H
+
+typedef int mbstate_t;
+
+namespace std
+{
+ using ::mbstate_t;
+}
+#endif
new file mode 100644
@@ -0,0 +1,9 @@
+// { dg-xfail-if "identifier bindings not set properly" { "*-*-*" } { "-fpph-map=pph.map"} }
+// { dg-bogus ".*Segmentation fault" "ICE trying to parse std::mbstate_t" { xfail *-*-* } 0 }
+#ifndef _X1_MBSTATE_H
+#define _X1_MBSTATE_H
+#include "x0mbstate_t.h"
+// Name lookup for std::mbstate_t fails here. Instead of returning the global
+// type_decl for mbstate_t, it returns the "usings ::mbstate_t" declaration.
+typedef std::mbstate_t state_type;
+#endif