Ticket #58 (new defect)

Opened 3 years ago

Last modified 3 years ago

Fails when code depends on templated types

Reported by: Derek Parnell Assigned to: derek
Priority: Must be next Component: core
Version: 3.04 Severity: major
Keywords: Cc:

Description

By using bud tango-user-dmd should not have to be linked in but if I

don't I get link errors. I have never tried to narrow it down until now and should be very simple to fix:

module test;


import gtk.RadioButton;

/*import tango.text.convert.Integer;
import tango.stdc.stringz;    //uncomment these to allow it to link
import tango.io.Stdout;*/

void main()
{
}


C:\d\tango\projects\test-bud-error>bud test.d -cleanup
OPTLINK (R) for Win32  Release 8.00.1
Copyright (C) Digital Mars 1989-2004  All rights reserved.
C:\D\tango\bin\..\lib\DD-gtk.lib(Widget)
  Error 42: Symbol Undefined _D5tango4text7convert7Integer7__arrayZ
C:\D\tango\bin\..\lib\DD-gtkc.lib(Loader)
  Error 42: Symbol Undefined _D5tango4stdc7stringz9toStringzFAaAaZPa
C:\D\tango\bin\..\lib\DD-gtkc.lib(Loader)
  Error 42: Symbol Undefined _D5tango2io6Stdout12__ModuleInfoZ

That is importing a module from gtkd but anything that makes use of tango while in .di files should also reproduce the error.

Change History

06/25/09 21:53:01 changed by Derek Parnell

Tim Matthews wrote(26 Jun 2009 12:55:32 +1200):

It appears .di files are passed incorrectly which made bud not suitable for projects built with gtkd.