September 18, 2019
On 9/18/19 11:09 AM, H. S. Teoh wrote:
> On Wed, Sep 18, 2019 at 10:48:27AM -0400, Steven Schveighoffer via Digitalmars-d-learn wrote:
>> On 9/17/19 8:14 PM, Jonathan M Davis wrote:
> [...]
>>> I suspect that deprecation messages are being triggered simply by
>>> code trying to use Nullable in template constraints rather than just
>>> when it's actually used in proper code, but I don't know.
>>
>> I too, think that it's really the template constraints that are
>> causing so much grief. Not only that, but it's impossible to find the
>> code that's actually triggering the usage.
> 
> That's really annoying.  Why are constraints triggering deprecation
> messages?  Shouldn't it be actual usage that trigger them?

Well, if the constraint is going to change the result when the symbol is actually removed, I'd say yes.

For example:

foo(int);

Nullable!int x;

static if(is(typeof(foo(x))) // true before removal, false after

But of course, my call isn't going to be that, that's going to be buried somewhere deep in a template.

> I've also seen similar in my own projects, and it's an eyesore, esp.
> since it was Phobos code that was triggering the messages, not actually
> anything in my own code.

Yeah, I would like to see where the deprecation is being triggered in MY code. I don't think -de will work, because then it simply changes what the is-expression returns, rather than show me the full trace of what I was trying to instantiate.

Really annoying.

-Steve
September 18, 2019
On 2019-09-17 22:55, Johan Engelen wrote:

> Wow. How come this is not caught by the CI testing?

That issue seems to be because "writeln" is printing "type", which is an enum. For enums, "writeln" prints the actual name of the enum member and not the value. It seems it extracts the names of all enum members and this particular enum contains deprecated members.

-- 
/Jacob Carlborg
1 2
Next ›   Last »