Index: cfe/trunk/docs/CommandGuide/diagtool.rst =================================================================== --- cfe/trunk/docs/CommandGuide/diagtool.rst +++ cfe/trunk/docs/CommandGuide/diagtool.rst @@ -0,0 +1,52 @@ +diagtool - clang diagnostics tool +================================= + +SYNOPSIS +-------- + +:program:`diagtool` *command* [*args*] + +DESCRIPTION +----------- + +:program:`diagtool` is a combination of four tool for dealing with diagnostics in :program:`clang`. + +SUBCOMMANDS +----------- + +:program:`diagtool` is separated into several subcommands each tailored to a +different purpose. A brief summary of each command follows, with more detail in +the sections that follow. + + * :ref:`find_diagnostic_id` - Print the id of the given diagnostic. + * :ref:`list_warnings` - List warnings and their corresponding flags. + * :ref:`show_enabled` - Show which warnings are enabled for a given command line. + * :ref:`tree` - Show warning flags in a tree view. + +.. _find_diagnostic_id: + +find-diagnostic-id +~~~~~~~~~~~~~~~~~~ + +:program:`diagtool` find-diagnostic-id *diagnostic-name* + +.. _list_warnings: + +list-warnings +~~~~~~~~~~~~~ + +:program:`diagtool` list-warnings + +.. _show_enabled: + +show-enabled +~~~~~~~~~~~~ + +:program:`diagtool` show-enabled [*options*] *filename ...* + +.. _tree: + +tree +~~~~ + +:program:`diagtool` tree [*diagnostic-group*] Index: cfe/trunk/docs/CommandGuide/index.rst =================================================================== --- cfe/trunk/docs/CommandGuide/index.rst +++ cfe/trunk/docs/CommandGuide/index.rst @@ -15,3 +15,4 @@ :maxdepth: 1 clang + diagtool Index: cfe/trunk/docs/ReleaseNotes.rst =================================================================== --- cfe/trunk/docs/ReleaseNotes.rst +++ cfe/trunk/docs/ReleaseNotes.rst @@ -93,6 +93,11 @@ behavior can be restored by setting ``-fclang-abi-compat`` to ``6`` or lower. +- An existing tool named ``diagtool`` has been added to the release. As the + name suggests, it helps with dealing with diagnostics in ``clang``, such as + finding out the warning hierarchy, and which of them are enabled by default + or for a particular compiler invocation. + - ... New Compiler Flags Index: cfe/trunk/tools/diagtool/CMakeLists.txt =================================================================== --- cfe/trunk/tools/diagtool/CMakeLists.txt +++ cfe/trunk/tools/diagtool/CMakeLists.txt @@ -17,3 +17,15 @@ clangBasic clangFrontend ) + +if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) + install(TARGETS diagtool + COMPONENT diagtool + RUNTIME DESTINATION bin) + + if (NOT CMAKE_CONFIGURATION_TYPES) + add_llvm_install_targets(install-diagtool + DEPENDS diagtool + COMPONENT diagtool) + endif() +endif()