what's with Rectangle::GetHeight() and GetWidth() in gen.hxx

Lubos Lunak l.lunak at suse.cz
Thu Dec 13 04:31:59 PST 2012


On Thursday 13 of December 2012, Noel Grandin wrote:
> Hi
>
> I seem to have triggered a problem on the windows tinderbox, but I'm
> struggling to understand why.
> The error on the tinderbox looks like:

> C:/cygwin/home/tinderbox/master-build/workdir/wntmsci13.pro/LinkTarget/Libr
>ary/iembobj.exp docholder.o : error LNK2019: unresolved external symbol
> "__declspec(dllimport) public: long __thiscall
> Rectangle::GetHeight(void)const " (__imp_?GetHeight at Rectangle@@QBEJXZ)
>     referenced in function
> __catch$?GetDocFrame at DocumentHolder@@AAE?AV?$Reference at VXFrame@frame at star@s
>un at com@@@uno at star@sun at com@@XZ$0

> Firstly, there seems to be a missing inline statement in the class
> header section.

 That's not needed actually.

> Secondly, given that there __is__ an inline modifier, why would the
> windows compiler be trying to link this function externally?

 The compiler is not required to inline, the keyword is just a hint.

 I'm not a Windows expert, but it looks like it is required on Windows to pass 
every used library to the link command, and this problem exists because 
embedobj does not link the tools library, and you've just introduced usage of 
it. I've pushed a fix for this.

-- 
 Lubos Lunak
 l.lunak at suse.cz


More information about the LibreOffice mailing list