xiaobai created this revision.
xiaobai added reviewers: zturner, labath.
Herald added a reviewer: serge-sans-paille.

clang-cl tries to match cl's interface, and treats /U as "Removes a
predefined macro" as cl does. When you feed clang-cl a file that begins with
'/U' (e.g. /Users/xiaobai/foo.c), clang-cl will emit a warning and in some cases
an error, like so:

clang-9: warning: '/Users/xiaobai/foo.c' treated as the '/U' option 
[-Wslash-u-filename]
clang-9: note: Use '--' to treat subsequent arguments as filenames
clang-9: error: no input files

If you're using clang-cl, make sure '--' is passed before the source file.


https://reviews.llvm.org/D58860

Files:
  lit/helper/build.py


Index: lit/helper/build.py
===================================================================
--- lit/helper/build.py
+++ lit/helper/build.py
@@ -568,6 +568,8 @@
         args.append('/c')
 
         args.append('/Fo' + obj)
+        if self.toolchain_type == 'clang-cl':
+            args.append('--')
         args.append(source)
 
         return ('compiling', [source], obj,


Index: lit/helper/build.py
===================================================================
--- lit/helper/build.py
+++ lit/helper/build.py
@@ -568,6 +568,8 @@
         args.append('/c')
 
         args.append('/Fo' + obj)
+        if self.toolchain_type == 'clang-cl':
+            args.append('--')
         args.append(source)
 
         return ('compiling', [source], obj,
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to