Commit 3bbf0690 authored by Dimitri van Heesch's avatar Dimitri van Heesch
Browse files

Bug 707925 - False warning for Java "warning: missing ( in exception list on member"

parent d00d094b
Loading
Loading
Loading
Loading
+9 −9
Original line number Original line Diff line number Diff line
@@ -370,12 +370,13 @@ static void writeExceptionListImpl(
        OutputList &ol, ClassDef *cd, MemberDef *md, QCString const& exception)
        OutputList &ol, ClassDef *cd, MemberDef *md, QCString const& exception)
{
{
  // this is ordinary exception spec - there must be a '('
  // this is ordinary exception spec - there must be a '('
  //printf("exception='%s'\n",exception.data());
  int index = exception.find('(');
  int index = exception.find('(');
  if (-1!=index)
  if (index!=-1)
  {
  {
    ol.exceptionEntry(exception.left(index),false);
    ol.exceptionEntry(exception.left(index),false);
    ++index; // paren in second column so skip it here
    ++index; // paren in second column so skip it here
    for (int comma = exception.find(',', index); -1!=comma; )
    for (int comma = exception.find(',', index); comma!=-1; )
    {
    {
      ++comma; // include comma
      ++comma; // include comma
      linkifyText(TextGeneratorOLImpl(ol),cd,md->getBodyDef(),md,
      linkifyText(TextGeneratorOLImpl(ol),cd,md->getBodyDef(),md,
@@ -385,21 +386,20 @@ static void writeExceptionListImpl(
      comma = exception.find(',', index);
      comma = exception.find(',', index);
    }
    }
    int close = exception.find(')', index);
    int close = exception.find(')', index);
    if (-1!=close)
    if (close!=-1)
    {
    {
      QCString type=removeRedundantWhiteSpace(exception.mid(index,close-index));
      QCString type=removeRedundantWhiteSpace(exception.mid(index,close-index));
      linkifyText(TextGeneratorOLImpl(ol),cd,md->getBodyDef(),md,type);
      linkifyText(TextGeneratorOLImpl(ol),cd,md->getBodyDef(),md,type);
      ol.exceptionEntry(0,true);
      ol.exceptionEntry(0,true);
    }
    }
    else
    else
    {
      warn(md->getDefFileName(),md->getDefLine(),
      warn(md->getDefFileName(),md->getDefLine(),
          "missing ) in exception list on member %s",qPrint(md->name()));
          "missing ) in exception list on member %s",qPrint(md->name()));
    }
    }
  else
  }
  else // Java Exception
  {
  {
    // fallback - is it possible to get here?
    warn(md->getDefFileName(),md->getDefLine(),
            "missing ( in exception list on member %s",qPrint(md->name()));
    ol.docify(" ");
    ol.docify(" ");
    linkifyText(TextGeneratorOLImpl(ol),cd,md->getBodyDef(),md,exception);
    linkifyText(TextGeneratorOLImpl(ol),cd,md->getBodyDef(),md,exception);
  }
  }