| Thread overview | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
May 16, 2015 [Request for ABI Breakage]: Ambiguity between extern(Pascal) vs. Template Value Parameters. | ||||
|---|---|---|---|---|
| ||||
In this small snippet: TS4html3dom4NodeVnnZ How am I supposed to know the difference between an extern(Pascal) function: html.dom.Node(none, none) And a template parameter list: html.dom.Node, null Since use of extern(Pascal) should be exceedingly rare (I don't think I ever followed ABI convention in GDC) I'd either request that extern(Pascal) be removed completely, or have it's mangled symbol be renamed to something other than a 'V' that does not clash with other types/identifiers. Regards Iain | ||||
May 16, 2015 Re: [Request for ABI Breakage]: Ambiguity between extern(Pascal) vs. Template Value Parameters. | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Iain Buclaw | "Iain Buclaw" wrote in message news:uzmzjndohsiaewkjmchu@forum.dlang.org... > Once use of extern(Pascal) should be exceedingly rare (I don't think I ever followed ABI convention in GDC) I'd either request that extern(Pascal) be removed completely, or have it's mangled symbol be renamed to something other than a 'V' that does not clash with other types/identifiers. Why do we even have extern(Pascal) ? | |||
May 16, 2015 Re: [Request for ABI Breakage]: Ambiguity between extern(Pascal) vs. Template Value Parameters. | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Daniel Murphy | On 16 May 2015 at 16:34, Daniel Murphy via Digitalmars-d <digitalmars-d@puremagic.com> wrote:
> "Iain Buclaw" wrote in message news:uzmzjndohsiaewkjmchu@forum.dlang.org...
>
>> Once use of extern(Pascal) should be exceedingly rare (I don't think I
>> ever followed ABI convention in GDC) I'd either request that extern(Pascal)
>> be removed completely, or have it's mangled symbol be renamed to something
>> other than a 'V' that does not clash with other types/identifiers.
>
>
> Why do we even have extern(Pascal) ?
No idea. D has never supported 16-bit systems. Walter?
| |||
May 16, 2015 Re: [Request for ABI Breakage]: Ambiguity between extern(Pascal) vs. Template Value Parameters. | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Iain Buclaw | AFAIK, pascal calling convention exists for 32-bit systems too: http://www.freepascal.org/docs-html/prog/progse22.html | |||
May 16, 2015 Re: [Request for ABI Breakage]: Ambiguity between extern(Pascal) vs. Template Value Parameters. | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Iain Buclaw | On Saturday, 16 May 2015 at 15:46:20 UTC, Iain Buclaw wrote: > On 16 May 2015 at 16:34, Daniel Murphy via Digitalmars-d > <digitalmars-d@puremagic.com> wrote: >> "Iain Buclaw" wrote in message news:uzmzjndohsiaewkjmchu@forum.dlang.org... >> >>> Once use of extern(Pascal) should be exceedingly rare (I don't think I >>> ever followed ABI convention in GDC) I'd either request that extern(Pascal) >>> be removed completely, or have it's mangled symbol be renamed to something >>> other than a 'V' that does not clash with other types/identifiers. >> >> >> Why do we even have extern(Pascal) ? > > No idea. D has never supported 16-bit systems. Walter? This is blocking me with improving demangling support in gdb/binutils. https://issues.dlang.org/show_bug.cgi?id=14591 https://github.com/D-Programming-Language/dmd/pull/4658 I may just drop support for recognising extern(Pascal) functions completely on my side. | |||
May 16, 2015 Re: [Request for ABI Breakage]: Ambiguity between extern(Pascal) vs. Template Value Parameters. | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Iain Buclaw | On Saturday, 16 May 2015 at 19:11:26 UTC, Iain Buclaw wrote:
> On Saturday, 16 May 2015 at 15:46:20 UTC, Iain Buclaw wrote:
>> On 16 May 2015 at 16:34, Daniel Murphy via Digitalmars-d
>> <digitalmars-d@puremagic.com> wrote:
>>> "Iain Buclaw" wrote in message news:uzmzjndohsiaewkjmchu@forum.dlang.org...
>>>
>>>> Once use of extern(Pascal) should be exceedingly rare (I don't think I
>>>> ever followed ABI convention in GDC) I'd either request that extern(Pascal)
>>>> be removed completely, or have it's mangled symbol be renamed to something
>>>> other than a 'V' that does not clash with other types/identifiers.
>>>
>>>
>>> Why do we even have extern(Pascal) ?
>>
>> No idea. D has never supported 16-bit systems. Walter?
>
> This is blocking me with improving demangling support in gdb/binutils.
>
> https://issues.dlang.org/show_bug.cgi?id=14591
> https://github.com/D-Programming-Language/dmd/pull/4658
>
> I may just drop support for recognising extern(Pascal) functions completely on my side.
Sorry for the noise, but since you're here
C++filt in binutils lists dlang support in the help but it doesn't actually work. Do I report this on binutils issue tracker, or gdc's?
| |||
May 16, 2015 Re: [Request for ABI Breakage]: Ambiguity between extern(Pascal) vs. Template Value Parameters. | ||||
|---|---|---|---|---|
| ||||
Posted in reply to weaselcat | On Saturday, 16 May 2015 at 19:16:04 UTC, weaselcat wrote:
> On Saturday, 16 May 2015 at 19:11:26 UTC, Iain Buclaw wrote:
>> On Saturday, 16 May 2015 at 15:46:20 UTC, Iain Buclaw wrote:
>>> On 16 May 2015 at 16:34, Daniel Murphy via Digitalmars-d
>>> <digitalmars-d@puremagic.com> wrote:
>>>> "Iain Buclaw" wrote in message news:uzmzjndohsiaewkjmchu@forum.dlang.org...
>>>>
>>>>> Once use of extern(Pascal) should be exceedingly rare (I don't think I
>>>>> ever followed ABI convention in GDC) I'd either request that extern(Pascal)
>>>>> be removed completely, or have it's mangled symbol be renamed to something
>>>>> other than a 'V' that does not clash with other types/identifiers.
>>>>
>>>>
>>>> Why do we even have extern(Pascal) ?
>>>
>>> No idea. D has never supported 16-bit systems. Walter?
>>
>> This is blocking me with improving demangling support in gdb/binutils.
>>
>> https://issues.dlang.org/show_bug.cgi?id=14591
>> https://github.com/D-Programming-Language/dmd/pull/4658
>>
>> I may just drop support for recognising extern(Pascal) functions completely on my side.
>
> Sorry for the noise, but since you're here
> C++filt in binutils lists dlang support in the help but it doesn't actually work. Do I report this on binutils issue tracker, or gdc's?
Binutils. Other tools may need similarly to be updated.
| |||
May 16, 2015 Re: [Request for ABI Breakage]: Ambiguity between extern(Pascal) vs. Template Value Parameters. | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Iain Buclaw | On Saturday, 16 May 2015 at 19:21:31 UTC, Iain Buclaw wrote:
> On Saturday, 16 May 2015 at 19:16:04 UTC, weaselcat wrote:
>> On Saturday, 16 May 2015 at 19:11:26 UTC, Iain Buclaw wrote:
>>> On Saturday, 16 May 2015 at 15:46:20 UTC, Iain Buclaw wrote:
>>>> On 16 May 2015 at 16:34, Daniel Murphy via Digitalmars-d
>>>> <digitalmars-d@puremagic.com> wrote:
>>>>> "Iain Buclaw" wrote in message news:uzmzjndohsiaewkjmchu@forum.dlang.org...
>>>>>
>>>>>> Once use of extern(Pascal) should be exceedingly rare (I don't think I
>>>>>> ever followed ABI convention in GDC) I'd either request that extern(Pascal)
>>>>>> be removed completely, or have it's mangled symbol be renamed to something
>>>>>> other than a 'V' that does not clash with other types/identifiers.
>>>>>
>>>>>
>>>>> Why do we even have extern(Pascal) ?
>>>>
>>>> No idea. D has never supported 16-bit systems. Walter?
>>>
>>> This is blocking me with improving demangling support in gdb/binutils.
>>>
>>> https://issues.dlang.org/show_bug.cgi?id=14591
>>> https://github.com/D-Programming-Language/dmd/pull/4658
>>>
>>> I may just drop support for recognising extern(Pascal) functions completely on my side.
>>
>> Sorry for the noise, but since you're here
>> C++filt in binutils lists dlang support in the help but it doesn't actually work. Do I report this on binutils issue tracker, or gdc's?
>
> Binutils. Other tools may need similarly to be updated.
By the way, "doesn't actually work" may need some explaining. (It works for me, for instance).
| |||
May 17, 2015 Re: [Request for ABI Breakage]: Ambiguity between extern(Pascal) vs. Template Value Parameters. | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Iain Buclaw | On 5/16/2015 8:46 AM, Iain Buclaw via Digitalmars-d wrote:
> On 16 May 2015 at 16:34, Daniel Murphy via Digitalmars-d
> <digitalmars-d@puremagic.com> wrote:
>> "Iain Buclaw" wrote in message news:uzmzjndohsiaewkjmchu@forum.dlang.org...
>>
>>> Once use of extern(Pascal) should be exceedingly rare (I don't think I
>>> ever followed ABI convention in GDC) I'd either request that extern(Pascal)
>>> be removed completely, or have it's mangled symbol be renamed to something
>>> other than a 'V' that does not clash with other types/identifiers.
>>
>>
>> Why do we even have extern(Pascal) ?
>
> No idea. D has never supported 16-bit systems. Walter?
>
Windows API calls used it.
| |||
May 18, 2015 Re: [Request for ABI Breakage]: Ambiguity between extern(Pascal) vs. Template Value Parameters. | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On 5/16/15 10:36 PM, Walter Bright wrote:
> On 5/16/2015 8:46 AM, Iain Buclaw via Digitalmars-d wrote:
>> On 16 May 2015 at 16:34, Daniel Murphy via Digitalmars-d
>> <digitalmars-d@puremagic.com> wrote:
>>> "Iain Buclaw" wrote in message
>>> news:uzmzjndohsiaewkjmchu@forum.dlang.org...
>>>
>>>> Once use of extern(Pascal) should be exceedingly rare (I don't think I
>>>> ever followed ABI convention in GDC) I'd either request that
>>>> extern(Pascal)
>>>> be removed completely, or have it's mangled symbol be renamed to
>>>> something
>>>> other than a 'V' that does not clash with other types/identifiers.
>>>
>>>
>>> Why do we even have extern(Pascal) ?
>>
>> No idea. D has never supported 16-bit systems. Walter?
>>
>
> Windows API calls used it.
So would it make sense to use extern(Pascal) to only deal with Windows API calls? I can't see the OP's case html.dom.Node(none, none) being a Windows call.
I'd also call it something else besides extern(Pascal) to avoid confusion.
-Steve
| |||
Copyright © 1999-2021 by the D Language Foundation
Permalink
Reply