Function pointers/delegates default args were stealth removed?

Piotr Duda duda.piotr at gmail.com
Sun Aug 26 23:14:41 PDT 2012


2012/8/27 Walter Bright <newshound2 at digitalmars.com>:
> On 8/26/2012 9:25 PM, Chris Cain wrote:
>>
>> On Monday, 27 August 2012 at 04:01:10 UTC, Walter Bright wrote:
>>>
>>> What happens with the name mangling? What about overloading? template
>>> type
>>> deduction? type specialization? type equivalence? type covariance?
>>
>>
>> Name mangling: Without knowing enough about compiler making, I'm not sure
>> why it
>> matters. I couldn't answer, sorry.
>
>
> The mangled names have a 1:1 correspondence with types. A mangled name can,
> for example, be reversed into a type.
>
> If default args form part of the type, then they'll have to be mangled in,
> too. This causes a rather long list of substantial problems.

Default args should be part of types (for passing them as template
args etc, implicity convertable if they differs only on defaults) but
not mangled in (since mangling is revelant only for linking, where
defaults doesn't matter).

-- 
闇に隠れた黒い力
弱い心を操る


More information about the Digitalmars-d mailing list