[Issue 3334] std.demangle doesn't parse ref, pure, nothrow

2015-06-09 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=3334

kenn...@gmail.com changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 CC||kenn...@gmail.com
 Resolution|--- |FIXED

Andrei Alexandrescu and...@erdani.com changed:

   What|Removed |Added

Version|2.032   |D2

--- Comment #4 from kenn...@gmail.com ---
Looks like this has been fixed.

--
module x;
import core.demangle, std.traits;

@property ref pure nothrow int foo(ref int z) {
return z;
}
@safe void bar() {
}
@trusted void baz() {
}

void main() {
assert(demangle(mangledName!foo) == pure nothrow ref @property int
x.foo(ref int));
assert(demangle(mangledName!bar) == @safe void x.bar());
assert(demangle(mangledName!baz) == @trusted void x.baz());
}
--

--


[Issue 3334] std.demangle doesn't parse ref, pure, nothrow

2011-04-23 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=3334


kenn...@gmail.com changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 CC||kenn...@gmail.com
 Resolution||FIXED


--- Comment #4 from kenn...@gmail.com 2011-04-23 02:16:46 PDT ---
Looks like this has been fixed.

--
module x;
import core.demangle, std.traits;

@property ref pure nothrow int foo(ref int z) {
return z;
}
@safe void bar() {
}
@trusted void baz() {
}

void main() {
assert(demangle(mangledName!foo) == pure nothrow ref @property int
x.foo(ref int));
assert(demangle(mangledName!bar) == @safe void x.bar());
assert(demangle(mangledName!baz) == @trusted void x.baz());
}
--

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 3334] std.demangle doesn't parse ref, pure, nothrow

2009-10-05 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=3334



--- Comment #3 from Lutger lutger.blijdest...@gmail.com 2009-10-05 10:32:14 
PDT ---
(In reply to comment #2)
 (In reply to comment #0)
  I didn't know how property is supposed to be demangled, so that one is just
  ignored.
 
 Congratulations, you've found the Easter egg! From the code in mtype.c, it's
 currently @property.
 
 assert(demangle(_D3fooFNdNaNbZv) == @property pure nothrow void foo());
 
 Interesting, eh? But you're quite right to ignore it. It might well change.

Very. Seeing the last release it should be changed to pure nothrow void foo()
@property. I'm curious to see how the property / attribute thing pans out.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 3334] std.demangle doesn't parse ref, pure, nothrow

2009-09-20 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=3334


Don clugd...@yahoo.com.au changed:

   What|Removed |Added

 CC||clugd...@yahoo.com.au
Summary|std.demangle doesn't parse  |std.demangle doesn't parse
   |ref, pure, notrow   |ref, pure, nothrow


--- Comment #2 from Don clugd...@yahoo.com.au 2009-09-20 11:27:25 PDT ---
(In reply to comment #0)
 I didn't know how property is supposed to be demangled, so that one is just
 ignored.

Congratulations, you've found the Easter egg! From the code in mtype.c, it's
currently @property.

assert(demangle(_D3fooFNdNaNbZv) == @property pure nothrow void foo());

Interesting, eh? But you're quite right to ignore it. It might well change.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---