• Olivier Goffart's avatar
    Use clang as a parser in qdoc · b032aee5
    Olivier Goffart authored
    
    The file qt_find_clang.prf is inspired by qtcreator's clang_installation.pri.
    The code from the while loop in ClangVisitor::parseProperty contains code
    moved from CppCodeParser::matchProperty. The code in the for loop of
    ClangCodeParser::parseSourceFile (from the "Doc parses the comment"), is mostly
    moved from CppCodeParser::matchDocsAndStuff.
    
    In CppCodeParser, most of the code is removed since clang is used for parsing.
    We just need to leave enough to parse the declaration in the comments which
    still use the old parser (\fn, ...)
    
    Known issues:
    - When the parameter name is a comment, it is lost.
      (e.g. QObject::eventFilter(QObject * /* watched */, QEvent * /* event */)
    - I can't compute default parameters when they are expanded from a macro.
      (e.g. QObject::tr)
    - Instances of #ifndef Q_QDOC need to be reviewed
    
    Change-Id: I92d4ca4fc52810d9d3de433147a9953eea3a1802
    Reviewed-by: default avatarTopi Reiniö <topi.reinio@qt.io>
    b032aee5