D - Bug in dmd
- Matthias Becker (41/41) Jan 19 2004 I tried to compile the following code (I just wanted to experiment a bit...
- Sean L. Palmer (7/48) Jan 21 2004 WTF!!?!! Is that even legit C++ code?!! I have never seen such a thing...
I tried to compile the following code (I just wanted to experiment a bit with
the new template-abilitys, but I get the following:
Assertion failure: '0' on line 67 in file 'template.c'
abnormal program termination
The code is:
/* C++
template <typename T>
struct Foo {
typedef T Type;
template <typename U>
struct Inner {
typedef U Type;
};
};
template <template <typename> class TT>
struct Bar {
typedef typename TT<int>::Type A;
typedef typename TT<int>::template Inner<A>::Type B;
};
int main(int argc, char *argv[])
{
Bar<Foo>::A x;
Bar<Foo>::B y;
}
*/
class Foo (T) {
typedef T Type;
class Inner (U) {
typedef U Type;
};
};
struct Bar (alias TT) {
typedef TT!(int).Type A;
typedef TT!(int).Inner!(A).Type B;
};
int main (char [][] args)
{
Bar!(Foo).A x;
Bar!(Foo).B y;
return 0;
}
Jan 19 2004
WTF!!?!! Is that even legit C++ code?!! I have never seen such a thing. I'm going to have to try that. VC++ 7.0 doesn't seem to like it. Sean "Matthias Becker" <Matthias_member pathlink.com> wrote in message news:buh7uu$28mh$1 digitaldaemon.com...I tried to compile the following code (I just wanted to experiment a bitwiththe new template-abilitys, but I get the following: Assertion failure: '0' on line 67 in file 'template.c' abnormal program termination The code is: /* C++ template <typename T> struct Foo { typedef T Type; template <typename U> struct Inner { typedef U Type; }; }; template <template <typename> class TT> struct Bar { typedef typename TT<int>::Type A; typedef typename TT<int>::template Inner<A>::Type B; }; int main(int argc, char *argv[]) { Bar<Foo>::A x; Bar<Foo>::B y; } */ class Foo (T) { typedef T Type; class Inner (U) { typedef U Type; }; }; struct Bar (alias TT) { typedef TT!(int).Type A; typedef TT!(int).Inner!(A).Type B; }; int main (char [][] args) { Bar!(Foo).A x; Bar!(Foo).B y; return 0; }
Jan 21 2004








"Sean L. Palmer" <palmer.sean verizon.net>