| author | |
| committer | |
| log | 8c2c6368f9645def45374c2fb9027bf72b15ab2e |
| tree | d46e25b31cce63f274d46ccd2556a1c698095c33 |
| parent | bcca76b3c4c6dcb24435db7a3a10d2319ef4c3aa |
| signature | Commit is signed but in an unrecognized format. |
2 files changed, 5 insertions(+), 8 deletions(-)
src/main.cpp+3-7| ... | @@ -260,13 +260,9 @@ int main(int argc, char **argv) { | ... | @@ -260,13 +260,9 @@ int main(int argc, char **argv) { |
| 260 | return 0; | 260 | return 0; |
| 261 | } | 261 | } |
| 262 | 262 | ||
| 263 | if (argc >= 2 && (strcmp(argv[1], "cc") == 0)) { | 263 | if (argc >= 2 && (strcmp(argv[1], "cc") == 0 || |
| 264 | return ZigClang_main(argc - 1, argv + 1); | 264 | strcmp(argv[1], "-cc1") == 0 || strcmp(argv[1], "-cc1as") == 0)) |
| 265 | } | 265 | { |
| 266 | if (argc >= 2 && strcmp(argv[1], "-cc1") == 0) { | ||
| 267 | return ZigClang_main(argc, argv); | ||
| 268 | } | ||
| 269 | if (argc >= 2 && strcmp(argv[1], "-cc1as") == 0) { | ||
| 270 | return ZigClang_main(argc, argv); | 266 | return ZigClang_main(argc, argv); |
| 271 | } | 267 | } |
| 272 | 268 |
src/zig_clang_driver.cpp+2-1| ... | @@ -318,7 +318,8 @@ static int ExecuteCC1Tool(ArrayRef<const char *> argv, StringRef Tool) { | ... | @@ -318,7 +318,8 @@ static int ExecuteCC1Tool(ArrayRef<const char *> argv, StringRef Tool) { |
| 318 | extern "C" int ZigClang_main(int argc_, const char **argv_); | 318 | extern "C" int ZigClang_main(int argc_, const char **argv_); |
| 319 | int ZigClang_main(int argc_, const char **argv_) { | 319 | int ZigClang_main(int argc_, const char **argv_) { |
| 320 | llvm::InitLLVM X(argc_, argv_); | 320 | llvm::InitLLVM X(argc_, argv_); |
| 321 | SmallVector<const char *, 256> argv(argv_, argv_ + argc_); | 321 | size_t argv_offset = (strcmp(argv_[1], "-cc1") == 0 || strcmp(argv_[1], "-cc1as") == 0) ? 0 : 1; |
| 322 | SmallVector<const char *, 256> argv(argv_ + argv_offset, argv_ + argc_); | ||
| 322 | 323 | ||
| 323 | if (llvm::sys::Process::FixupStandardFileDescriptors()) | 324 | if (llvm::sys::Process::FixupStandardFileDescriptors()) |
| 324 | return 1; | 325 | return 1; |