[all-commits] [llvm/llvm-project] 389530: [clang-scan-deps] do not skip empty #if/#elif in t...

Alex Lorenz via All-commits all-commits at lists.llvm.org
Mon Dec 2 18:47:30 PST 2019


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 389530524be1715e97947810514f3a75dfe73975
      https://github.com/llvm/llvm-project/commit/389530524be1715e97947810514f3a75dfe73975
  Author: Alex Lorenz <arphaman at gmail.com>
  Date:   2019-12-02 (Mon, 02 Dec 2019)

  Changed paths:
    M clang/lib/Lex/DependencyDirectivesSourceMinimizer.cpp
    A clang/test/ClangScanDeps/Inputs/has_include_if_elif.json
    A clang/test/ClangScanDeps/has_include_if_elif.cpp
    M clang/unittests/Lex/DependencyDirectivesSourceMinimizerTest.cpp

  Log Message:
  -----------
  [clang-scan-deps] do not skip empty #if/#elif in the minimizer to avoid missing `__has_include` dependencies

This patch makes the minimizer more conservative to avoid missing dependency files that are brought in by __has_include
PP expressions that occur in a condition of an #if/#elif that was previously skipped. The __has_include PP expressions
can be used in an #if/#elif either directly, or through macro expansion, so we can't detect them at the time of minimization.

Differential Revision: https://reviews.llvm.org/D70936




More information about the All-commits mailing list