Skip to content
  • scott snyder's avatar
    CaloCondPhysAlgs: Fix ubsan warnings. · a3458b91
    scott snyder authored
    In gcc7, ubsan will warn if the distance between a vtable pointer
    and the beginning of an object is greater than a sanity check threshold,
    hardcoded as 1<<20.  This implies that classes larger than this that
    use virtual derivation can get warnings from ubsan.
    While this is in principle a false positive, it's probably not
    really a good idea to have such large class objects.  (gdb also
    complains, because in some cases it needs to copy objects.)
    
    One such class is CaloCellNoiseAlg.  Rework so that the bulk of the
    size is factored out into a separately-allocated block.
    This fixes the ubsan warnings.
    
    
    
    Former-commit-id: 59ac4ad0
    a3458b91