URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [g++.dg/] [template/] [nontype12.C] - Rev 594
Go to most recent revision | Compare with Previous | Blame | View Log
// PR c++/20172
// Origin: Volker Reichelt <reichelt@igpm.rwth-aachen.de>
template<typename T> struct A
{
template<T> int foo(); // { dg-error "double" }
template<template<T> class> int bar(); // { dg-error "double" }
template<T> struct X; // { dg-error "double" }
};
A<char> a1;
A<double> a2; // { dg-message "instantiated" }
template<typename T> struct B
{
template<double> int foo(); // { dg-error "double" }
template<template<double> class> int bar(); // { dg-error "double" }
template<double> struct X; // { dg-error "double" }
};
template<void> int foo(); // { dg-error "void" }
template<template<void> class> int bar(); // { dg-error "void" }
template<void> struct X; // { dg-error "void" }
template<typename T> struct C
{
template<T> int foo(); // { dg-error "double" }
};
template<typename T> int baz(T) { C<T> c; } // { dg-message "instantiated" }
void foobar()
{
baz(1.2); // { dg-message "instantiated" }
}
Go to most recent revision | Compare with Previous | Blame | View Log