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 Index 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <2017
<== Date ==> <== Thread ==>

Subject: Re: warnings about strict aliasing
From: Dirk Zimoch <dirk.zimoch@psi.ch>
To: Michael Davidsaver <mdavidsaver@gmail.com>, "core-talk@aps.anl.gov" <core-talk@aps.anl.gov>
Date: Thu, 30 Nov 2017 13:33:39 +0100
On 29.11.2017 20:51, Michael Davidsaver wrote:
On 11/29/2017 12:43 PM, Dirk Zimoch wrote:
The file anyscalar.h generates many warnings of the form

/afs/psi.ch/group/8431/dirk/git/BASE/epics-base-master/include/pv/anyscalar.h:98: warning: dereferencing pointer ‘<anonymous>’ does break strict-aliasing rules

The construct used (std::aligned_storage) is well defined in c++11.

http://en.cppreference.com/w/cpp/types/aligned_storage

I am a bit concerned about that because it may lead to wrong optimization. I think this should either be fixed or -fno-strict-aliasing should be added to the compiler flags for recent gccs (i.e. not old vxWorks :-) )

GCC >=4.8.4 (at latest) doesn't warn about this even with -std=c++98.  So if anything, this is only need for older compilers.


I checked the code and found that older compilers (those who complain) see a different piece of code. (#if __cplusplus>=201103L ... #else). And not all of them complain.

I will do some tests to find out if I can remove the warnings. If not, I will add the -fno-strict-aliasing compiler option to my architectures which use older compilers and to the vxWorks configuration in EPICS.

But this is no showstopper for the release.


Replies:
Re: warnings about strict aliasing Dirk Zimoch
Re: warnings about strict aliasing Michael Davidsaver
References:
warnings about strict aliasing Dirk Zimoch
Re: warnings about strict aliasing Michael Davidsaver

Navigate by Date:
Prev: Re: EPICS 7 vxWorks diff Dirk Zimoch
Next: Re: warnings about strict aliasing Dirk Zimoch
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <2017
Navigate by Thread:
Prev: Re: warnings about strict aliasing Michael Davidsaver
Next: Re: warnings about strict aliasing Dirk Zimoch
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <2017
ANJ, 30 Nov 2017 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·