delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/1999/05/06/03:13:51

Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm
Sender: cygwin-owner AT sourceware DOT cygnus DOT com
Delivered-To: mailing list cygwin AT sourceware DOT cygnus DOT com
Message-ID: <C2D7D58DBFE9D111B0480060086E96358D6F99@gftmail.gft.de>
From: "Schaible, Joerg" <Joerg DOT Schaible AT gft DOT de>
To: "'cygwin-list'" <cygwin AT sourceware DOT cygnus DOT com>
Subject: DLL's and templates
Date: Thu, 6 May 1999 09:13:09 +0200
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2448.0)
X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id DAA31911

Hello,

currently I am trying to link my own first DLL (Mumits samples worked quite
well), but I got unresolved externals for the vtable of all template classes
used within my DLL. Typically following code:

// header.h

class __declspec(dllexport) A
{
public:
	A() {}
	virtual ~A() {} 
};


template <class X>
class B : public A
{
public:
	B() {}
	virtual ~B() {}
};


// module.cxx

static B b;


Compiling and linking the DLL I will have an unresolved external vor the
vtable of B or for inlined virtual destructors. B is not necessarily
exported.

Original error messages:
..\egcs112\rel\gwbase\sh\gwstrsb.o(.text+0x2ba3):gwstrsb.cc: undefined
reference to `GwSingletonClass<GwMemoryCluster>::~GwSingletonClass(void)'
..\egcs112\rel\gwbase\sh\gwstrwc.o(.text$__t13GwTMemoryPool1Z13GwWCStringImp
i+0x6b):gwstrwc.cc: undefined reference to `GwTMemoryPool<GwWCStringImp>
virtual table'

Greetings Jörg


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019