www.digitalmars.com         C & C++   DMDScript  

D - BUG - Compiler crash with alias of template.

reply "news.digitalmars.com" <jcesar phreaker.net> writes:
If the alias definition is put after the template definition everything
compiles nicely.

Tested on Fedora Linux, Win98 and Win2k with DMD 0.81.


-- 
Julio CÚsar Carrascal Urquijo.
Mar 23 2004
parent reply larry cowan <larry_member pathlink.com> writes:
What b64 are you using?  I get "Error: Invalid base64 character '['" right away.

In article <c3phsi$17ui$1 digitaldaemon.com>, news.digitalmars.com says...
If the alias definition is put after the template definition everything
compiles nicely.

Tested on Fedora Linux, Win98 and Win2k with DMD 0.81.


-- 
Julio CÚsar Carrascal Urquijo.


begin 666 bug.d
M[[N_86QI87, 5&5M<&QA=&4A*$-L87-S*2!#;&%S<U1E;7!L871E.PT*#0IC
M;&%S<R!#;&%S<R![?0T*<W1R=6-T(%1E;7!L871E*%0Q*2![?0T*#0HO+V%L
M:6%S(%1E;7!L871E(2A#;&%S<RD 0VQA<W-496UP;&%T93L-" T*=F]I9"!M
-86EN*"D-"GL-"GT-" ``
`
end

Mar 23 2004
parent reply Julio CÚsar Carrascal Urquijo <Julio_member pathlink.com> writes:
Just Outlook Express. I'll post it again using the web interface.


In article <c3pnhj$1ih2$1 digitaldaemon.com>, larry cowan says...
What b64 are you using?  I get "Error: Invalid base64 character '['" right away.

In article <c3phsi$17ui$1 digitaldaemon.com>, news.digitalmars.com says...
If the alias definition is put after the template definition everything
compiles nicely.

Tested on Fedora Linux, Win98 and Win2k with DMD 0.81.


-- 
Julio CÚsar Carrascal Urquijo.


begin 666 bug.d
M[[N_86QI87, 5&5M<&QA=&4A*$-L87-S*2!#;&%S<U1E;7!L871E.PT*#0IC
M;&%S<R!#;&%S<R![?0T*<W1R=6-T(%1E;7!L871E*%0Q*2![?0T*#0HO+V%L
M:6%S(%1E;7!L871E(2A#;&%S<RD 0VQA<W-496UP;&%T93L-" T*=F]I9"!M
-86EN*"D-"GL-"GT-" ``
`
end


Mar 23 2004
parent reply larry cowan <larry_member pathlink.com> writes:
Same problem.  It changed in the last 3 chars of the short line near the end,
but still has many invalid chars for me.  Why b64 something like this anyway?
Does it have some web-ugly binary in it?

begin 666 bug.d
M[[N_86QI87, 5&5M<&QA=&4A*$-L87-S*2!#;&%S<U1E;7!L871E.PT*#0IC
M;&%S<R!#;&%S<R![?0T*<W1R=6-T(%1E;7!L871E*%0Q*2![?0T*#0HO+V%L
M:6%S(%1E;7!L871E(2A#;&%S<RD 0VQA<W-496UP;&%T93L-" T*=F]I9"!M
-86EN*"D-"GL-"GT-" ``
`
end


M[[N_86QI87, 5&5M<&QA=&4A*$-L87-S*2!#;&%S<U1E;7!L871E.PT*#0IC M;&%S<R!#;&%S<R![?0T*<W1R=6-T(%1E;7!L871E*%0Q*2![?0T*#0HO+V%L M:6%S(%1E;7!L871E(2A#;&%S<RD 0VQA<W-496UP;&%T93L-" T*=F]I9"!M -86EN*"D-"GL-"GT-"BA# ` end

Mar 23 2004
parent reply "news.digitalmars.com" <jcesar phreaker.net> writes:
Yea, you'r right. Here's the code.

alias Template!(Class) ClassTemplate;

class Class {}
struct Template(T1) {}

//alias Template!(Class) ClassTemplate;

void main()
{
}

That's it, although the files seem fine here. I supouse Microsoft's base64
isn't the standard bas64 algo. I wonder why?




----- Original Message ----- 
From: "larry cowan" <larry_member pathlink.com>
Newsgroups: D
Sent: Tuesday, March 23, 2004 11:59 AM
Subject: Re: BUG - Compiler crash with alias of template. - bug.d


 Same problem.  It changed in the last 3 chars of the short line near the

 but still has many invalid chars for me.  Why b64 something like this

 Does it have some web-ugly binary in it?

Mar 23 2004
next sibling parent reply larry cowan <larry_member pathlink.com> writes:
Thanks.  At least it doesn't match the b64 in Phobos.

For what it's worth, the Template has to be before the alias for the crash,
the Class doesn't matter - it can even be after the main().

In article <c3q3rc$28gf$1 digitaldaemon.com>, news.digitalmars.com says...
Yea, you'r right. Here's the code.

alias Template!(Class) ClassTemplate;

class Class {}
struct Template(T1) {}

//alias Template!(Class) ClassTemplate;

void main()
{
}

Mar 23 2004
parent "news.digitalmars.com" <jcesar phreaker.net> writes:
Yes, that's exactly the workarround I'm using right now. I was going to
report another error with templates specialized on interfaces but it seems
to work with 0.81 now.
Mar 23 2004
prev sibling parent larry cowan <larry_member pathlink.com> writes:
Thanks.  At least it doesn't match the b64 in Phobos.

For what it's worth, the Template has to be before the alias to prevent the
crash, the Class doesn't matter - it can even be after the main().

(Outlook won't let me cancel if I posted with the web interface.)

In article <c3q3rc$28gf$1 digitaldaemon.com>, news.digitalmars.com says...
Yea, you'r right. Here's the code.

alias Template!(Class) ClassTemplate;

class Class {}
struct Template(T1) {}

//alias Template!(Class) ClassTemplate;

void main()
{
}

Mar 23 2004