[Bug c++/34950] [4.2/4.3 Regression] ICE in svn boost math toolkit
------- Comment #5 from rguenth at gcc dot gnu dot org 2008-01-24 15:52 -------
Reduced (invalid?) testcase:
template <class Real, class Policy> struct precision {
typedef typename Policy::precision_type precision_type;
};
template <class T1, class T2, class Policy>
struct bessel_traits {
typedef T1 result_type;
typedef typename precision<result_type, Policy>::type precision_type;
};
template <class Fn>
void
def(char const* name, Fn fn);
template <class T1, class T2, class Policy>
typename bessel_traits<T1, T2, Policy>::result_type
cyl_bessel_j(T1 v, T2 x, const Policy& pol);
void hedge_expose_polynomial()
{
def("cyl_bessel_j", cyl_bessel_j<int, double>);
}
EDG says
ice.1.min.cpp(20): error: no instance of function template "def" matches the
argument list
argument types are: (const char [13], <unknown-type>)
def("cyl_bessel_j", cyl_bessel_j<int, double>);
^
compilation aborted for ice.1.min.cpp (code 2)
4.1 errors with
ice.1.min.cpp: In instantiation of 'precision<int, Policy>':
ice.1.min.cpp:7: instantiated from 'bessel_traits<int, double, Policy>'
ice.1.min.cpp:20: instantiated from here
ice.1.min.cpp:2: error: no type named 'precision_type' in 'Policy'
ice.1.min.cpp: In instantiation of 'bessel_traits<int, double, Policy>':
ice.1.min.cpp:20: instantiated from here
ice.1.min.cpp:7: error: no type named 'type' in 'struct precision<int, Policy>'
ice.1.min.cpp: In function 'void hedge_expose_polynomial()':
ice.1.min.cpp:20: error: no matching function for call to 'def(const char [13],
<unresolved overloaded function type>)'
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Keywords| |ice-on-invalid-code
Known to fail| |4.2.3 4.3.0
Last reconfirmed|0000-00-00 00:00:00 |2008-01-24 15:52:12
date| |
Summary|ICE in svn boost math |[4.2/4.3 Regression] ICE in
|toolkit |svn boost math toolkit
Target Milestone|--- |4.2.3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34950
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
Reply to: