EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024  Index 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: CALLBACK clash
From: Ralph Lange via Core-talk <[email protected]>
To: EPICS Core Talk <[email protected]>
Date: Thu, 5 Sep 2019 10:35:47 +0200
I have run into this before.
I my case, I was lucky and got by with not including EPICS callback.h in a source file where it was not really needed.

For EPICS, putting a symbol with a name as generic as "CALLBACK" into the global namespace is pretty much calling for clashes.

Cheers,
~Ralph


On Thu, 5 Sep 2019 at 04:12, Michael Davidsaver via Core-talk <[email protected]> wrote:
I could use some help with a CI build failure on windows.
I think the issue is header ordering, though rather than the
usual dllimport/export, it is a conflict with CALLBACK.

I can't recall having to resolve this before, and the build output
isn't very helpful.  I don't see a reference to the line
in pdbsingle.cpp through which dbghelp.h is included.
So I don't know where to start moving things around.

https://github.com/epics-base/pva2pva/blob/master/pdbApp/pdbsingle.cpp

https://jenkins.aps.anl.gov/job/3.15-pva2pva-win64s/228/consoleFull

> cl -EHsc -GR            -DUSE_TYPED_RSET -I../../common -I../../p2pApp -DFINAL_LOCATION="\"C:/jenkins/win64-2/workspace/3.15-pva2pva-win64\"" -DNOMINMAX     -nologo -FC -D__STDC__=0 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE   -Ox -Oy-   -W3 -w44355 -w44344 -w44251        -MT  -TP  -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/msvc -I../../include/os/WIN32 -I../../include   -IC:/Jenkins/win64-2/workspace/3.15-pvAccess-win64/include   -IC:/Jenkins/win64-2/workspace/3.15-pvData-win64/include -IC:/epics/base-3.15.6/include/compiler/msvc -IC:/epics/base-3.15.6/include/os/WIN32 -IC:/epics/base-3.15.6/include        -c ../pdbsingle.cpp
> pdbsingle.cpp
> c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\dbghelp.h(109): error C2143: syntax error: missing ')' before '*'
> c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\dbghelp.h(109): error C2143: syntax error: missing ';' before '*'
> c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\dbghelp.h(109): error C2371: 'CALLBACK': redefinition; different basic types
> c:\epics\base-3.15.6\include\callback.h(47): note: see declaration of 'CALLBACK'
> c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\dbghelp.h(109): error C2059: syntax error: ')'
> c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\dbghelp.h(113): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int


I know that this isn't the only issue.  There are some dllimport/export
issues as well.  I have a process for sorting through these though.

https://ci.appveyor.com/project/mdavidsaver/epics-base/builds/27112632/job/ohx3f240g1vq3b1r

Replies:
Re: CALLBACK clash Michael Davidsaver via Core-talk
References:
CALLBACK clash Michael Davidsaver via Core-talk

Navigate by Date:
Prev: Re: [Merge] ~dirk.zimoch/epics-base:iocLogClientFixes into epics-base:7.0 Andrew Johnson via Core-talk
Next: Re: [Merge] ~dirk.zimoch/epics-base:iocLogClientFixes into epics-base:7.0 Dirk Zimoch via Core-talk
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
Navigate by Thread:
Prev: CALLBACK clash Michael Davidsaver via Core-talk
Next: Re: CALLBACK clash Michael Davidsaver via Core-talk
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
ANJ, 05 Sep 2019 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·