View mode: basic / threaded / horizontal-split · Log in · Help
October 04, 2008
null and IFTI
It is unclear from the specs if null should be exact matched against
nullable types during IFTI. Now it works only for void*.

class C
{
}

void foo(T)(T x, C c) // C - a nullable type
{
}

void main()
{
   foo(1, null); // fails
   foo(1, cast(C)null); // ok
}

Is it by design?
October 04, 2008
Re: null and IFTI
On Sat, 04 Oct 2008 10:50:33 +0400, Max Samukha  
<samukha@voliacable.com.removethis> wrote:

> It is unclear from the specs if null should be exact matched against
> nullable types during IFTI. Now it works only for void*.
>
> class C
> {
> }
>
> void foo(T)(T x, C c) // C - a nullable type
> {
> }
>
> void main()
> {
>     foo(1, null); // fails
>     foo(1, cast(C)null); // ok
> }
>
> Is it by design?

I think it is a bug. This might be relevant:  
http://d.puremagic.com/issues/show_bug.cgi?id=2389
October 05, 2008
Re: null and IFTI
On Sat, 04 Oct 2008 12:01:24 +0400, "Denis Koroskin"
<2korden@gmail.com> wrote:

>On Sat, 04 Oct 2008 10:50:33 +0400, Max Samukha  
><samukha@voliacable.com.removethis> wrote:
>
>> It is unclear from the specs if null should be exact matched against
>> nullable types during IFTI. Now it works only for void*.
>>
>> class C
>> {
>> }
>>
>> void foo(T)(T x, C c) // C - a nullable type
>> {
>> }
>>
>> void main()
>> {
>>     foo(1, null); // fails
>>     foo(1, cast(C)null); // ok
>> }
>>
>> Is it by design?
>
>I think it is a bug. This might be relevant:  
>http://d.puremagic.com/issues/show_bug.cgi?id=2389

Not a big issue, but I felt like filing it anyway
http://d.puremagic.com/issues/show_bug.cgi?id=2394
Top | Discussion index | About this forum | D home