On 1/13/2012 8:52 PM, Andrei Alexandrescu wrote:
On 1/13/12 10:03 PM, Walter Bright wrote:
On 1/13/2012 7:03 PM, Andrei Alexandrescu wrote:
How is that possibly different from what you have now?

Intrinsic functions are today just a table lookup in the compiler.

They're a table lookup if the operation is a compile-time constant. So this
argument does not apply.

Template intrinsics currently do not exist, so more code needs to be
written for them.

The same table lookup could be done, except in this case it would be more
principled.

You and I are talking about different things.

The current compiler looks for intrinsics after all template functions are converted into real functions. The mangled name is looked up in a table to see if:

1. it is an intrinsic function

2. what is the corresponding expression node operator

Doing it for intrinsic functions would require either:

1. adding hundreds of function signatures to the table

2. moving the intrinsic detection to the template instantiation logic

Reply via email to