[Bug tree-optimization/55616] bogus warning about undefined overflow after overflow check

fweimer at redhat dot com gcc-bugzilla@gcc.gnu.org
Thu Jan 31 09:50:00 GMT 2013


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55616

Florian Weimer <fweimer at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |than at redhat dot com

--- Comment #2 from Florian Weimer <fweimer at redhat dot com> 2013-01-31 09:50:26 UTC ---
Okular triggers this warning as well, in
dviRenderer::TPIC_addPath_special(const QString& cp), due to:

  if (TPIC_path.size() == number_of_elements_in_path)
    TPIC_path.resize(number_of_elements_in_path+100);

QVector::resize(int) is defined as:

template <typename T>
void QVector<T>::resize(int asize)
{ realloc(asize, (asize > d->alloc || (!d->capacity && asize < d->size && asize
< (d->alloc >> 1))) ?
  QVectorData::grow(sizeOfTypedData(), asize, sizeof(T),
QTypeInfo<T>::isStatic)
          : d->alloc); }

asize < d->size turns into d->size < d->size + 100 and triggers the warning.



More information about the Gcc-bugs mailing list