+2006-08-29 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR C++/28349
+ * call.c (build_x_va_arg): Remove the reference type
+ from the type before creating the pointer type.
+
2006-08-29 J"orn Rennecke <joern.rennecke@st.com>
PR c++/28139
if (! pod_type_p (type))
{
+ /* Remove reference types so we don't ICE later on. */
+ tree type1 = non_reference (type);
/* Undefined behavior [expr.call] 5.2.2/7. */
warning (0, "cannot receive objects of non-POD type %q#T through %<...%>; "
"call will abort at runtime", type);
- expr = convert (build_pointer_type (type), null_node);
+ expr = convert (build_pointer_type (type1), null_node);
expr = build2 (COMPOUND_EXPR, TREE_TYPE (expr),
call_builtin_trap (), expr);
expr = build_indirect_ref (expr, NULL);
+2006-08-29 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c++/28349
+ * testsuite/g++.dg/warn/var-args1.C: New test.
+
2006-08-29 Steven G. Kargl <kargls@comcast.net>
PR fortran/28866