+++ /dev/null
-// { dg-do compile }
-
-// Copyright (C) 2001 Free Software Foundation, Inc.
-// Contributed by Nathan Sidwell 31 Dec 2001 <nathan@codesourcery.com>
-
-// PR 5132. ICE on struct constructors in templates.
-
-// snippets from bits/huge_val.h
-
-#define __HUGE_VAL_bytes { 0, 0, 0, 0, 0, 0, 0xf0, 0x7f }
-#define __huge_val_t union { unsigned char __c[8]; double __d; }
-#define HUGE_VAL (__extension__ \
- ((__huge_val_t) { __c: __HUGE_VAL_bytes }).__d)
-
-void foo( const int&) {
- HUGE_VAL; // no problem here
-}
-
-template <class F>
-void Tfoo( const F&) {
- HUGE_VAL; // g++ fails here
-}
-
-template <typename T> struct M { T m; };
-
-void Foo ()
-{
- Tfoo (1.2f);
- (__extension__ ((M<int>) {m:3}));
- (__extension__ ((M<short> []) {{m:3}}));
-}