EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Base 3.14.12.5-rc1 Available
From: Andrew Johnson <[email protected]>
To: <[email protected]>
Date: Fri, 13 Mar 2015 11:10:07 -0500
Hi Freddie,

On 03/13/2015 09:59 AM, [email protected] wrote:
> I’ve compiled and run base 3.14.12.5-rc1 on Windows 8 64bit with 
> Visual Studio 2013, shared build, both windows-x64-debug and 
> windows-x64 as EPICS_HOST_ARCH targets - all built OK and “make 
> runtests” passed too :-)

Great, thanks for the report.

> I noticed a couple of warnings in the build log that might have some
> relevance
> 
> c:\epics-base-3.14.12.5-rc1\src\ca\oldAccess.h(594) : warning C4930: 'epicsGuardRelease<T> guardRelease(void)': prototyped function not called (was a variable definition intended?)
>         with
>         [
>             T=epicsMutex
>         ]
>         c:\epics-base-3.14.12.5-rc1\src\ca\sgAutoPtr.h(59) : see reference to function template instantiation 'void ca_client_context::whenThereIsAnExceptionDestroySyncGroupIO<T>(epicsGuard<epicsMutex> &,T &)' being compiled
>         with
>         [
>             T=syncGroupWriteNotify
>         ]
>         c:\epics-base-3.14.12.5-rc1\src\ca\sgAutoPtr.h(55) : while compiling class template member function 'sgAutoPtr<syncGroupWriteNotify>::~sgAutoPtr(void)'
>         ..\CASG.cpp(216) : see reference to function template instantiation 'sgAutoPtr<syncGroupWriteNotify>::~sgAutoPtr(void)' being compiled
>         ..\CASG.cpp(216) : see reference to class template instantiation 'sgAutoPtr<syncGroupWriteNotify>' being compiled
> 
> Passing “guard” as the argument would remove the warning, but I don’t
> know if that is the desired behaviour. Removing the () from the line
> gives a “no appropriate default constructor” error.   

I added "guard" on the 3.15 branch some time back, I think that's the
right fix, although the sync groups feature isn't really used much so
I'm not 100% sure. Applied to 3.14.

> cl -c /favor:blend /nologo /D__STDC__=0 /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /Zi /RTCsu /W3 /w44355 /MDd -I. -I..\\O.Common -I. -I.. -I..\\..\\..\\include\\os\\WIN32 -I..\\..\\..\\include ..\\tool_lib.c 
> tool_lib.c
> c:\epics-base-3.14.12.5-rc1\include\alarmString.h(30) : warning C4273: 'epicsAlarmSeverityStrings' : inconsistent dll linkage
>         C:\epics-base-3.14.12.5-rc1\include\alarm.h(46) : see previous definition of 'epicsAlarmSeverityStrings'
> c:\epics-base-3.14.12.5-rc1\include\alarmString.h(40) : warning C4273: 'epicsAlarmConditionStrings' : inconsistent dll linkage
>         C:\epics-base-3.14.12.5-rc1\include\alarm.h(101) : see previous definition of 'epicsAlarmConditionStrings'
> 
> epicsAlarmSeverityStrings is declared epicsShareExtern in alarm.h but
> just extern in alarmString.h – making both extern removes the
> warning, making them both epicsShareExtern causes a “error C2491:
> 'epicsAlarmSeverityStrings' : definition of dllimport data not
> allowed” issue when compiling  tool_lib.c

We have a proper fix for this 3.15 but I didn't want to pull it into
3.14 as it's a bit more extensive. I changed it to use 'extern'.

> I also enclose a diff of a couple of minor mods I have locally in 
> 3-14-12-4:

> * With a debug build on windows, isprint() throws an exception if
> the function argument is < 0

This issue should have been fixed already in 3.14.12.5.

> * The windows implementation of currentTime::getCurrentTime is 
> missing a divide by EPICS_TIME_TICKS_PER_SEC when reporting a time 
> discontinuity

Applied, thanks.

- Andrew

-- 
Light thinks it travels faster than anything but it is wrong.
No matter how fast light travels, it finds the darkness has
always got there first, and is waiting for it.
    -- Terry Pratchett, Reaper Man

Replies:
RE: Base 3.14.12.5-rc1 Available freddie.akeroyd
References:
Base 3.14.12.5-rc1 Available Andrew Johnson
RE: Base 3.14.12.5-rc1 Available freddie.akeroyd

Navigate by Date:
Prev: RE: Base 3.14.12.5-rc1 Available freddie.akeroyd
Next: CSS - how to read waveform of CHARS (or STRINGS) in a script? Isabella Rey
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: Base 3.14.12.5-rc1 Available freddie.akeroyd
Next: RE: Base 3.14.12.5-rc1 Available freddie.akeroyd
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 16 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·