0031680: Configuration - Compilation Fails With G++ 10.1, LD 2.34 and Link-Time Optim...
authorBenjamin Bihler <benjamin.bihler@compositence.de>
Tue, 21 Jul 2020 11:37:03 +0000 (13:37 +0200)
committerbugmaster <bugmaster@opencascade.com>
Thu, 23 Jul 2020 13:08:18 +0000 (16:08 +0300)
Added a non-inline empty virtual destructor to LDOM_OSStream to force vtable generation in one
translation unit only.

src/LDOM/LDOM_OSStream.cxx
src/LDOM/LDOM_OSStream.hxx

index f19741d..4734721 100644 (file)
@@ -161,3 +161,11 @@ LDOM_OSStream::LDOM_OSStream (const Standard_Integer theMaxBuf)
 {
   init(&myBuffer);
 }
+
+//=======================================================================
+//function : ~LDOM_OSStream()
+//purpose  : Destructor - for g++ vtable generation in *this* translation unit
+//=======================================================================
+LDOM_OSStream::~LDOM_OSStream()
+{
+}
index 63330db..e3f88a5 100644 (file)
@@ -102,6 +102,8 @@ public:
   //! Constructor
   Standard_EXPORT LDOM_OSStream(const Standard_Integer theMaxBuf);
 
+  Standard_EXPORT virtual ~LDOM_OSStream();
+
   Standard_CString str () const {return myBuffer.str();}
 
   Standard_Integer Length () const { return myBuffer.Length(); }