[Issue 15419] std.conv.parse() does not accept string literals

via Digitalmars-d-bugs digitalmars-d-bugs at puremagic.com
Mon Dec 7 20:37:30 PST 2015


https://issues.dlang.org/show_bug.cgi?id=15419

thomas.bockman at gmail.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|FIXED                       |WONTFIX

--- Comment #5 from thomas.bockman at gmail.com ---
Marking this as WONTFIX.

A real fix would either:
1) Use `scope ref`, if it is ever implemented, or
2) Use the `auto ref` like so (to minimize template bloat):

template parse(Target, Source)
    if(/+constraints+/)
{
    private Target impl(ref Source s)
    {
        /+implementation+/
    }

    pragma(inline, true)
    Target parse(auto ref Source s)
    {
        return impl(s);
    }
}

The later should completely fix the problem, and be fully backwards compatible.
However, it would be a large diff and might confuse ddoc, too.

--


More information about the Digitalmars-d-bugs mailing list