This file is generated by cc_configure and contains builtin include directories
that /usr/bin/clang reported. This file is a dependency of every compilation action and
changes to it will be reflected in the action cache key. When some of these
paths change, Bazel will make sure to rerun the action, even though none of
declared action inputs or the action commandline changes.

/usr/local/include
/usr/lib/llvm-6.0/lib/clang/6.0.0/include
/usr/include/x86_64-linux-gnu
/usr/include
/usr/lib/llvm-6.0/lib/clang/6.0.0/share
/usr/include/c++/7.5.0
/usr/include/x86_64-linux-gnu/c++/7.5.0
/usr/include/c++/7.5.0/backward
/usr/include/clang/6.0.0/include
/usr/lib/clang/6.0.0/include
