August 30, 2007 private interface does not link | ||||
---|---|---|---|---|
| ||||
Attachments: | Hello.
I have an interface that I made private as the interface is module specific. For this example, I created the smallest test code that exhibits the problem.
I can compile the source but when it links, I get:
> F:\opt\digitalmars\dmd\bin\..\..\dm\bin\link.exe main,,,user32+kernel32/noi;
> OPTLINK (R) for Win32 Release 7.50B1
> Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved
>
> main.obj(main)
> Error 42: Symbol Undefined _D4main15ConnectionState10checkStateMFZb
> --- errorlevel 1
If I remove the private attribute from the interface, it works.
I am using DMD 1.020. Is this a DMD bug?
Thanks,
Myron.
|
August 30, 2007 Re: private interface does not link | ||||
---|---|---|---|---|
| ||||
Posted in reply to Myron Alexander |
Myron Alexander wrote:
> Hello.
>
> I have an interface that I made private as the interface is module specific. For this example, I created the smallest test code that exhibits the problem.
>
> I can compile the source but when it links, I get:
>
>> F:\opt\digitalmars\dmd\bin\..\..\dm\bin\link.exe
>> main,,,user32+kernel32/noi;
>> OPTLINK (R) for Win32 Release 7.50B1
>> Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved
>>
>> main.obj(main)
>> Error 42: Symbol Undefined _D4main15ConnectionState10checkStateMFZb
>> --- errorlevel 1
>
> If I remove the private attribute from the interface, it works.
>
> I am using DMD 1.020. Is this a DMD bug?
>
> Thanks,
>
> Myron.
I had the same issue several months ago. Took me about four days to work out why my code wasn't linking.
I'm pretty sure this is a DMD bug; it's clearly generating a reference to the ConnectionState.checkState function which *doesn't exist*.
That said, I never got around to filing a bug for it since I was swamped at the time.
-- Daniel
|
Copyright © 1999-2021 by the D Language Foundation