On Mon, Sep 20, 2021 at 7:37 AM John Emmas via cfe-users <cfe-users@lists.llvm.org> wrote: > > Hi there - I'm building quite a complex Windows program here using > VS2019. Obviously there's an EXE and there's maybe 30 or so DLLs. Some > DLL's might have code which looks like this in a header file:- > > class whatever { > static int revision_num; > }; > > or if there's no class involved it'd maybe look like this:- > > extern int revision_num; > > ... > But if I switch VS2019 to use Clang (when building the EXE) Clang's > linker will complain that it can't find the variable 'revision_num'. > But of course, 'revision_num' is an internal variable that's private to > the DLL - so the EXE should never need to know about it...
'revision_num' is declared static. Try 'extern static int revision_num'. Getting this sort of thing to compile under different compilers can be tricky. Especially when exporting templates. Jeff _______________________________________________ cfe-users mailing list cfe-users@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users