Turn Driver::CCCIsCXX and CCCIsCPP into a single Mode enum,
authorHans Wennborg <hans@hanshq.net>
Thu, 18 Jul 2013 20:29:38 +0000 (20:29 +0000)
committerHans Wennborg <hans@hanshq.net>
Thu, 18 Jul 2013 20:29:38 +0000 (20:29 +0000)
commit70850d83dce7a0c249f2548f060893314576786f
tree65ee1f1f1d7e894272039ce33071d829ff3071a2
parent92463274e647e007aa70efb4872b02057b63d8cc
Turn Driver::CCCIsCXX and CCCIsCPP into a single Mode enum,
and add a new option --driver-mode= to control it explicitly.

The CCCIsCXX and CCCIsCPP flags were non-overlapping, i.e. there
are currently really three modes that Clang can run in: gcc, g++
or cpp, so it makes sense to represent them as an enum.

Having a command line flag to control it helps testing.

llvm-svn: 186605
clang/include/clang/Driver/Driver.h
clang/include/clang/Driver/Options.td
clang/lib/Driver/Driver.cpp
clang/lib/Driver/Tools.cpp
clang/test/Driver/ccc-as-cpp.c
clang/test/Driver/hexagon-toolchain-elf.c
clang/test/Driver/hexagon-toolchain.c
clang/test/Driver/immediate-options.c
clang/test/lit.cfg
clang/tools/driver/driver.cpp