← Back to team overview

kicad-developers team mailing list archive

Re: Coverity heads-up

 

Hi Wayne,

The main one that permeates the code is CONFIG_PARAM_ARRAY.  It doesn't use any of the boost::ptr_array fancy stuff.

We don’t currently catch /any/ of the exceptions thrown by boost for this data structure, so that part is unchanged.  What does change is the signal-to-noise ratio out of Coverity.

I was also going to do SCH_SHEET_PINS, which is the same, but has much less widespread use.

Cheers,
Jeff.


> On 12 Jan 2020, at 13:21, Wayne Stambaugh <stambaughw@xxxxxxxxx> wrote:
> 
> Hi Jeff,
> 
> We should probably discuss this a bit before you spend any time on it.
> The boost pointer containers do a lot of housekeeping under the hood
> that the standard c++ containers do not.  This means that all of the
> object cloning behavior automatically handled by the boost pointer
> containers will have to be duplicated.  How do plan on handling out of
> memory errors which I believe is the only exception that boost pointer
> containers throw?  Ignoring out of memory errors is not an acceptable
> option.  These issues will need to be address in order to convert over
> to the standard c++ containers.
> 
> Cheers,
> 
> Wayne
> 
> On 1/12/20 7:34 AM, Jeff Young wrote:
>> I’ve given up chasing down all the places where we fail to catch boost exceptions.
>> 
>> I’m removing boost::ptr_vector<T> in favour of std::vector<T*> (which boost uses under the hood anyway).
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> More help   : https://help.launchpad.net/ListHelp
>> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp



Follow ups

References