Thread overview
[Issue 19692] std.algorithm errors are useless for compile errors in templated arguments
Feb 22, 2019
FeepingCreature
Feb 22, 2019
FeepingCreature
Dec 17, 2022
Iain Buclaw
February 22, 2019
https://issues.dlang.org/show_bug.cgi?id=19692

FeepingCreature <default_357-line@yahoo.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|std.algorithm errors are    |std.algorithm errors are
                   |useless for syntax errors   |useless for compile errors
                   |in templated arguments      |in templated arguments

--
February 22, 2019
https://issues.dlang.org/show_bug.cgi?id=19692

--- Comment #1 from FeepingCreature <default_357-line@yahoo.de> ---
An alternate proposal: `__traits(compiles, ...)` returns an "error object" on failure that encapsulates the gagged error, and evaluates to false for if(), ||, etc, but is preserved through short-circuiting. Ie. error1 || error2 -> (error1 + error2); ie. it is an entirely valid symbol that happens to correspond to a compiler error. When a template instantiation failure is logged, the error is output to accompany the failure.

This should preserve the cause of instantiation failures without requiring significant changes to existing code.

--
December 17, 2022
https://issues.dlang.org/show_bug.cgi?id=19692

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P1                          |P4

--
December 13
https://issues.dlang.org/show_bug.cgi?id=19692

--- Comment #2 from dlangBugzillaToGithub <robert.schadek@posteo.de> ---
THIS ISSUE HAS BEEN MOVED TO GITHUB

https://github.com/dlang/dmd/issues/17898

DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB

--