summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--Completion/Unix/Command/_gcc5
2 files changed, 9 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 804332db7..2e1bfb8ad 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2020-01-08  dana  <dana@dana.is>
+
+	* 45261: Completion/Unix/Command/_gcc: Detect clang-as-gcc
+
 2020-01-07  Daniel Shahaf  <danielsh@apache.org>
 
 	* unposted: Test/X04zlehighlight.ztst: internal: Remove Vim
diff --git a/Completion/Unix/Command/_gcc b/Completion/Unix/Command/_gcc
index bbfbc2b9e..9ec09200e 100644
--- a/Completion/Unix/Command/_gcc
+++ b/Completion/Unix/Command/_gcc
@@ -13,6 +13,11 @@ if [[ "$service" = -value-* ]]; then
     args2=()
   fi
 else
+  # On some systems (macOS), cc/gcc/g++ are actually clang; treat them accordingly
+  [[ $service != clang* ]] &&
+  _pick_variant clang=clang unix --version &&
+  service=clang-$service
+
   args2=( '*:input file:_files -g "*.([cCmisSoak]|cc|cpp|cxx|ii|k[ih])(-.)"' )
 fi