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

Subject: [Bug 1905159] Re: Fix warnings from recent compiler versions
From: Jerzy Tarasiuk via Core-talk <core-talk at aps.anl.gov>
To: core-talk at aps.anl.gov
Date: Thu, 17 Jun 2021 09:29:36 -0000
Another warning summary (for u16,u18,u20,crio):
1. comparison between signed and unsigned integer expressions
   - 1x except u20? for u20 there is another text
2. deprecated - 8x in all;  crio has no more warnings
3. osi/os/posix/osdTime.cpp:64 "done" defined but not used u16 (only!)
4. caRepeater.cpp:93 ignoring return value of chdir("/") u16 u18 u20
5. Cap5.xs:646 CA_put :739 CA_put_callback "p.dbr" may be uninitialized*2 u16 u20
6. testApp/remote/testServer.cpp:265 may write a terminating nul
   past the end of the destination u18*2 u20*2
7. output truncated u20*4
8. specified bound depends on the length of the source argument u20*1
9. specified bound xx equals destination size u20*4
10. rec/biRecord.c argument to 'sizeof' in 'strncpy' call is the same expression
  as the source; did you mean to use the size of the destination? u20*6
11. mbbioDirectTest.c:44 '.B' directive writing 2 bytes into a region of size
  between 1 and 40 u20*2

Total warnings: crio=9 u16=13 u18=12 u20=31
Abbreviations: crio = Compact RIO (NI-9039 w/ NI Linux Real-Time),
               u16/u18/u20 = Ubuntu 16.04 / 18.04 / 20.04 LTS.

More details about some warnings:
1,4,6,8 - a fix was proposed earlier, in #18,#18,#15,#16, respectively
3. the "done" in posix/osdTime.cpp line 64 is really unused; just remove it?
   (or comment it out by putting // - maybe it is to be used in some future)
5. possibly uninitialized p.dbr in Cap5.xs
   there is a best_type() function, and its return value is used in a 'case'
   statement; for 4 values, the p.dbr will be initialized, for any other it
   will remain uninitialized; what can the best_type() function return?
9. bound xx equals - see #17; is the value stored to have a null terminator?

Still poorly understood or not examined at all:
7. output truncated - see #6, #15, #16
2. 8*deprecated
10. argument to 'sizeof' in 'strncpy' call (biRecord.c)
11. '.B' directive writing 2 bytes into a region (mbbioDirectTest.c:44)

-- 
You received this bug notification because you are a member of EPICS
Core Developers, which is subscribed to EPICS Base.
Matching subscriptions: epics-core-list-subscription
https://bugs.launchpad.net/bugs/1905159

Title:
  Fix warnings from recent compiler versions

Status in EPICS Base:
  Triaged

Bug description:
  Builds of EPICS Base using recent versions of gcc, clang and MSVC
  generate compiler warnings, which we try to minimize if possible. Some
  of these warnings can be prevented with suitable code modifications,
  although the code must still build on the older compilers and other
  architectures that we support.

  Both the 3.15 and 7.0 branches can be examined for warnings; fixes
  made on the 3.15 branch get propagated to the 7.0 branch during
  periodic up-merges, so there is no need to make the same changes to
  both branches. Some code only exists on one branch; for example the
  gdd module was unbundled after 3.15, and there are many new modules in
  7.0.

To manage notifications about this bug go to:
https://bugs.launchpad.net/epics-base/+bug/1905159/+subscriptions

Navigate by Date:
Prev: Build failed: EPICS Base 7 base-7.0-340 AppVeyor via Core-talk
Next: [Bug 1932033] Re: base EPICS compilation misses convertRelease.pl Jerzy Tarasiuk via Core-talk
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  <20212022  2023  2024 
Navigate by Thread:
Prev: [Bug 1905159] Re: Fix warnings from recent compiler versions Jerzy Tarasiuk via Core-talk
Next: [Bug 1905159] Re: Fix warnings from recent compiler versions Jerzy Tarasiuk via Core-talk
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  <20212022  2023  2024 
ANJ, 17 Jun 2021 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·