[llvm] [ci] Add ids workflow for checking llvm apis have been annotated with LLVM_ABI (PR #128370)

via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 12 07:41:03 PDT 2025


https://github.com/mcbarton updated https://github.com/llvm/llvm-project/pull/128370

>From fa63258759f4195b3b3ce20f4be6616de3d567a9 Mon Sep 17 00:00:00 2001
From: mcbarton <150042563+mcbarton at users.noreply.github.com>
Date: Tue, 7 Jan 2025 09:06:17 +0000
Subject: [PATCH 01/12] Add ids workflow (Ubuntu runner)

---
 .github/workflows/ids-check.yml | 95 +++++++++++++++++++++++++++++++++
 1 file changed, 95 insertions(+)
 create mode 100644 .github/workflows/ids-check.yml

diff --git a/.github/workflows/ids-check.yml b/.github/workflows/ids-check.yml
new file mode 100644
index 0000000000000..9b34aa5e7e678
--- /dev/null
+++ b/.github/workflows/ids-check.yml
@@ -0,0 +1,95 @@
+name: ids-check
+on:
+  pull_request:
+    types:
+      - opened
+      - synchronize
+      - reopened
+      - closed
+  push:
+    branches:
+      - 'main'
+      - 'release/**'
+
+permissions:
+  contents: read
+
+concurrency:
+  group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
+  cancel-in-progress: true
+
+jobs:
+  build:
+    if: github.repository_owner == 'llvm'
+    name: ids-check
+    runs-on: ubuntu-24.04
+
+    steps:
+    - uses: actions/checkout at 11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
+      with:
+        repository: compnerd/ids
+        path: ${{ github.workspace }}/ids
+        fetch-depth: 0
+
+    - uses: actions/checkout at 11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
+      with:
+        path: ${{ github.workspace }}/llvm-project
+        fetch-depth: 2
+
+    - name: install dependencies
+      run: |
+        sudo apt install -y clang-19 ninja-build libclang-19-dev
+        pip install lit
+
+    - name: Configure and build minimal LLVM for use by ids
+      run: |
+        cmake -B ${{ github.workspace }}/llvm-project/build/ \
+              -D CMAKE_BUILD_TYPE=Release \
+              -S ${{ github.workspace }}/llvm-project/llvm/ \
+              -D LLVM_ENABLE_PROJECTS=clang \
+              -D LLVM_TARGETS_TO_BUILD="host" \
+              -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
+              -G Ninja
+        cd ${{ github.workspace }}/llvm-project/build/
+        ninja -t targets all | grep "CommonTableGen: phony$" | grep -v "/" | sed 's/:.*//'
+
+    - name: Configure ids
+      run: |
+        cmake -B ${{ github.workspace }}/ids/build/ \
+              -S ${{ github.workspace }}/ids/ \
+               -D CMAKE_BUILD_TYPE=Release \
+               -D CMAKE_C_COMPILER=clang \
+               -D CMAKE_CXX_COMPILER=clang++ \
+               -D CMAKE_EXE_LINKER_FLAGS=-fuse-ld=lld \
+               -D LLVM_DIR=/usr/lib/llvm-19/lib/cmake/llvm/ \
+               -D Clang_DIR=/usr/lib/llvm-19/lib/cmake/clang/ \
+               -D FILECHECK_EXECUTABLE=$(which FileCheck-19) \
+               -D LIT_EXECUTABLE=$(which lit)
+
+    - name: Build ids
+      run: |
+        cmake --build ${{ github.workspace }}/ids/build \
+              --config Release \
+              --parallel $(nproc --all)
+
+    - name: Run ids over compilation database
+      run: |
+        cd ${{ github.workspace }}/llvm-project
+        export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/**/*.h' ':!llvm/include/llvm/Debuginfod/' ':!llvm/include/llvm/Demangle/' )
+        if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
+          for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json --export-macro=LLVM_ABI --include-header="llvm/Support/Compiler.h" --extra-arg="-DLLVM_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+          done
+        fi
+        export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm-c/**/*.h' )
+        if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
+          for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json --export-macro=LLVM_C_ABI --include-header="llvm-c/Visibility.h" --extra-arg="-DLLVM_C_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+          done
+        fi
+        export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/Demangle/**/*.h' )
+        if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
+          for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json --export-macro=DEMANGLE_ABI --include-header="llvm/Demangle/Visibility.h" --extra-arg="-DEMANGLE_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+          done
+        fi

>From a21b01dde2bd530ed73f1e2e93160268c62677e1 Mon Sep 17 00:00:00 2001
From: mcbarton <matthew.c.barton at hotmail.co.uk>
Date: Thu, 14 Aug 2025 07:48:31 +0100
Subject: [PATCH 02/12] Show what happens when ids check workflow fails

---
 llvm/include/llvm/ADT/Any.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/llvm/include/llvm/ADT/Any.h b/llvm/include/llvm/ADT/Any.h
index 88dbce96c2c3d..edcec8100afd6 100644
--- a/llvm/include/llvm/ADT/Any.h
+++ b/llvm/include/llvm/ADT/Any.h
@@ -25,7 +25,7 @@
 
 namespace llvm {
 
-class LLVM_ABI Any {
+class Any {
 
   // The `Typeid<T>::Id` static data member below is a globally unique
   // identifier for the type `T`. It is explicitly marked with default

>From ea63601f81eea3d9649ef0927c4493bfe9d91297 Mon Sep 17 00:00:00 2001
From: mcbarton <matthew.c.barton at hotmail.co.uk>
Date: Thu, 14 Aug 2025 11:31:54 +0100
Subject: [PATCH 03/12] Try to make ids workflow fail

---
 .github/workflows/ids-check.yml | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/.github/workflows/ids-check.yml b/.github/workflows/ids-check.yml
index 9b34aa5e7e678..4c596d0fbf4e5 100644
--- a/.github/workflows/ids-check.yml
+++ b/.github/workflows/ids-check.yml
@@ -74,22 +74,23 @@ jobs:
 
     - name: Run ids over compilation database
       run: |
+        set -e
         cd ${{ github.workspace }}/llvm-project
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/**/*.h' ':!llvm/include/llvm/Debuginfod/' ':!llvm/include/llvm/Demangle/' )
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json --export-macro=LLVM_ABI --include-header="llvm/Support/Compiler.h" --extra-arg="-DLLVM_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=LLVM_ABI --include-header="llvm/Support/Compiler.h" --extra-arg="-DLLVM_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm-c/**/*.h' )
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json --export-macro=LLVM_C_ABI --include-header="llvm-c/Visibility.h" --extra-arg="-DLLVM_C_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=LLVM_C_ABI --include-header="llvm-c/Visibility.h" --extra-arg="-DLLVM_C_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/Demangle/**/*.h' )
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json --export-macro=DEMANGLE_ABI --include-header="llvm/Demangle/Visibility.h" --extra-arg="-DEMANGLE_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=DEMANGLE_ABI --include-header="llvm/Demangle/Visibility.h" --extra-arg="-DEMANGLE_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi

>From f6a906c74a10a09c058ca8185bd91a407439e586 Mon Sep 17 00:00:00 2001
From: mcbarton <matthew.c.barton at hotmail.co.uk>
Date: Thu, 14 Aug 2025 11:44:11 +0100
Subject: [PATCH 04/12] (wip) change over to Windows runner

---
 .github/workflows/ids-check.yml | 41 ++++++++++++++++++---------------
 1 file changed, 23 insertions(+), 18 deletions(-)

diff --git a/.github/workflows/ids-check.yml b/.github/workflows/ids-check.yml
index 4c596d0fbf4e5..c5eecb1fa4b6b 100644
--- a/.github/workflows/ids-check.yml
+++ b/.github/workflows/ids-check.yml
@@ -22,7 +22,7 @@ jobs:
   build:
     if: github.repository_owner == 'llvm'
     name: ids-check
-    runs-on: ubuntu-24.04
+    runs-on: windows-2025
 
     steps:
     - uses: actions/checkout at 11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -36,61 +36,66 @@ jobs:
         path: ${{ github.workspace }}/llvm-project
         fetch-depth: 2
 
-    - name: install dependencies
+    - name: Install dependencies
+      shell: pwsh
       run: |
-        sudo apt install -y clang-19 ninja-build libclang-19-dev
-        pip install lit
+        Invoke-WebRequest -Uri "https://github.com/llvm/llvm-project/releases/download/llvmorg-20.1.8/clang+llvm-20.1.8-x86_64-pc-windows-msvc.tar.xz" -OutFile "clang20.tar.xz"
+        & "C:\Program Files\Git\usr\bin\tar.exe" -xf .\clang20.tar.xz
+        pip install lit filecheck
 
     - name: Configure and build minimal LLVM for use by ids
+      shell: bash
       run: |
-        cmake -B ${{ github.workspace }}/llvm-project/build/ \
+        cmake -B C:/a/llvm-project/llvm-project/llvm-project/build/ \
               -D CMAKE_BUILD_TYPE=Release \
-              -S ${{ github.workspace }}/llvm-project/llvm/ \
+              -S C:/a/llvm-project/llvm-project/llvm-project/llvm/ \
               -D LLVM_ENABLE_PROJECTS=clang \
               -D LLVM_TARGETS_TO_BUILD="host" \
               -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
               -G Ninja
-        cd ${{ github.workspace }}/llvm-project/build/
+        cd C:/a/llvm-project/llvm-project/llvm-project/build/
         ninja -t targets all | grep "CommonTableGen: phony$" | grep -v "/" | sed 's/:.*//'
 
     - name: Configure ids
+      shell: bash
       run: |
-        cmake -B ${{ github.workspace }}/ids/build/ \
-              -S ${{ github.workspace }}/ids/ \
+        cmake -B C:/a/llvm-project/llvm-project/ids/build/ \
+              -S C:/a/llvm-project/llvm-project/ids/ \
                -D CMAKE_BUILD_TYPE=Release \
                -D CMAKE_C_COMPILER=clang \
                -D CMAKE_CXX_COMPILER=clang++ \
                -D CMAKE_EXE_LINKER_FLAGS=-fuse-ld=lld \
-               -D LLVM_DIR=/usr/lib/llvm-19/lib/cmake/llvm/ \
-               -D Clang_DIR=/usr/lib/llvm-19/lib/cmake/clang/ \
-               -D FILECHECK_EXECUTABLE=$(which FileCheck-19) \
+               -D LLVM_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-x86_64-pc-windows-msvc/lib/cmake/llvm/" \
+               -D Clang_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-x86_64-pc-windows-msvc/lib/cmake/clang/" \
+               -D FILECHECK_EXECUTABLE=$(which filecheck) \
                -D LIT_EXECUTABLE=$(which lit)
 
     - name: Build ids
+      shell: bash
       run: |
-        cmake --build ${{ github.workspace }}/ids/build \
+        cmake --build C:/a/llvm-project/llvm-project/ids/build \
               --config Release \
               --parallel $(nproc --all)
 
     - name: Run ids over compilation database
+      shell: bash
       run: |
-        set -e
-        cd ${{ github.workspace }}/llvm-project
+        cd C:/a/llvm-project/llvm-project/llvm-project
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/**/*.h' ':!llvm/include/llvm/Debuginfod/' ':!llvm/include/llvm/Demangle/' )
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=LLVM_ABI --include-header="llvm/Support/Compiler.h" --extra-arg="-DLLVM_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --export-macro=LLVM_ABI --include-header="llvm/Support/Compiler.h" --extra-arg="-DLLVM_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm-c/**/*.h' )
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=LLVM_C_ABI --include-header="llvm-c/Visibility.h" --extra-arg="-DLLVM_C_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json --export-macro=LLVM_C_ABI --include-header="llvm-c/Visibility.h" --extra-arg="-DLLVM_C_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/Demangle/**/*.h' )
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=DEMANGLE_ABI --include-header="llvm/Demangle/Visibility.h" --extra-arg="-DEMANGLE_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json --export-macro=DEMANGLE_ABI --include-header="llvm/Demangle/Visibility.h" --extra-arg="-DEMANGLE_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi

>From 9b99bb62ce97d419d8918296d1636aafc7f357b1 Mon Sep 17 00:00:00 2001
From: mcbarton <matthew.c.barton at hotmail.co.uk>
Date: Thu, 14 Aug 2025 18:59:34 +0100
Subject: [PATCH 05/12] Use Ninja when configuring ids

---
 .github/workflows/ids-check.yml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.github/workflows/ids-check.yml b/.github/workflows/ids-check.yml
index c5eecb1fa4b6b..274565990d37d 100644
--- a/.github/workflows/ids-check.yml
+++ b/.github/workflows/ids-check.yml
@@ -69,6 +69,7 @@ jobs:
                -D Clang_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-x86_64-pc-windows-msvc/lib/cmake/clang/" \
                -D FILECHECK_EXECUTABLE=$(which filecheck) \
                -D LIT_EXECUTABLE=$(which lit)
+               -G Ninja
 
     - name: Build ids
       shell: bash

>From 1071b78c209d4c58c16700dc7228b267e40ffec1 Mon Sep 17 00:00:00 2001
From: mcbarton <matthew.c.barton at hotmail.co.uk>
Date: Thu, 14 Aug 2025 19:05:50 +0100
Subject: [PATCH 06/12] Debug ids-check.yml

---
 .github/workflows/ids-check.yml | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/.github/workflows/ids-check.yml b/.github/workflows/ids-check.yml
index 274565990d37d..5d465be009638 100644
--- a/.github/workflows/ids-check.yml
+++ b/.github/workflows/ids-check.yml
@@ -50,6 +50,8 @@ jobs:
               -D CMAKE_BUILD_TYPE=Release \
               -S C:/a/llvm-project/llvm-project/llvm-project/llvm/ \
               -D LLVM_ENABLE_PROJECTS=clang \
+              -D CMAKE_C_COMPILER=clang \
+              -D CMAKE_CXX_COMPILER=clang++ \
               -D LLVM_TARGETS_TO_BUILD="host" \
               -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
               -G Ninja
@@ -68,7 +70,7 @@ jobs:
                -D LLVM_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-x86_64-pc-windows-msvc/lib/cmake/llvm/" \
                -D Clang_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-x86_64-pc-windows-msvc/lib/cmake/clang/" \
                -D FILECHECK_EXECUTABLE=$(which filecheck) \
-               -D LIT_EXECUTABLE=$(which lit)
+               -D LIT_EXECUTABLE=$(which lit) \
                -G Ninja
 
     - name: Build ids

>From b38037c4afd682f4d76c40576379de859fe2ac6b Mon Sep 17 00:00:00 2001
From: mcbarton <matthew.c.barton at hotmail.co.uk>
Date: Thu, 14 Aug 2025 19:40:32 +0100
Subject: [PATCH 07/12] Use Windows arm runner along with
 visualstudio2022community install to get missing dia library

---
 .github/workflows/ids-check.yml | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/.github/workflows/ids-check.yml b/.github/workflows/ids-check.yml
index 5d465be009638..a29700a509cd2 100644
--- a/.github/workflows/ids-check.yml
+++ b/.github/workflows/ids-check.yml
@@ -22,7 +22,7 @@ jobs:
   build:
     if: github.repository_owner == 'llvm'
     name: ids-check
-    runs-on: windows-2025
+    runs-on: windows-11-arm
 
     steps:
     - uses: actions/checkout at 11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -39,8 +39,9 @@ jobs:
     - name: Install dependencies
       shell: pwsh
       run: |
-        Invoke-WebRequest -Uri "https://github.com/llvm/llvm-project/releases/download/llvmorg-20.1.8/clang+llvm-20.1.8-x86_64-pc-windows-msvc.tar.xz" -OutFile "clang20.tar.xz"
+        Invoke-WebRequest -Uri "https://github.com/llvm/llvm-project/releases/download/llvmorg-20.1.8/clang+llvm-20.1.8-aarch64-pc-windows-msvc.tar.xz" -OutFile "clang20.tar.xz"
         & "C:\Program Files\Git\usr\bin\tar.exe" -xf .\clang20.tar.xz
+        choco install visualstudio2022community
         pip install lit filecheck
 
     - name: Configure and build minimal LLVM for use by ids
@@ -67,8 +68,8 @@ jobs:
                -D CMAKE_C_COMPILER=clang \
                -D CMAKE_CXX_COMPILER=clang++ \
                -D CMAKE_EXE_LINKER_FLAGS=-fuse-ld=lld \
-               -D LLVM_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-x86_64-pc-windows-msvc/lib/cmake/llvm/" \
-               -D Clang_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-x86_64-pc-windows-msvc/lib/cmake/clang/" \
+               -D LLVM_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/lib/cmake/llvm/" \
+               -D Clang_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/lib/cmake/clang/" \
                -D FILECHECK_EXECUTABLE=$(which filecheck) \
                -D LIT_EXECUTABLE=$(which lit) \
                -G Ninja

>From 152e62407765af177a5779c8c90b9e75d6148500 Mon Sep 17 00:00:00 2001
From: mcbarton <matthew.c.barton at hotmail.co.uk>
Date: Thu, 14 Aug 2025 20:54:27 +0100
Subject: [PATCH 08/12] Try compiling ids with downloaded clang/clang++

---
 .github/workflows/ids-check.yml | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/.github/workflows/ids-check.yml b/.github/workflows/ids-check.yml
index a29700a509cd2..0fd6cccc1f586 100644
--- a/.github/workflows/ids-check.yml
+++ b/.github/workflows/ids-check.yml
@@ -65,8 +65,8 @@ jobs:
         cmake -B C:/a/llvm-project/llvm-project/ids/build/ \
               -S C:/a/llvm-project/llvm-project/ids/ \
                -D CMAKE_BUILD_TYPE=Release \
-               -D CMAKE_C_COMPILER=clang \
-               -D CMAKE_CXX_COMPILER=clang++ \
+               -D CMAKE_C_COMPILER="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/bin/clang" \
+               -D CMAKE_CXX_COMPILER="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/bin/clang++" \
                -D CMAKE_EXE_LINKER_FLAGS=-fuse-ld=lld \
                -D LLVM_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/lib/cmake/llvm/" \
                -D Clang_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/lib/cmake/clang/" \
@@ -78,8 +78,7 @@ jobs:
       shell: bash
       run: |
         cmake --build C:/a/llvm-project/llvm-project/ids/build \
-              --config Release \
-              --parallel $(nproc --all)
+              --config Release
 
     - name: Run ids over compilation database
       shell: bash

>From ac71060040f9aebc41a81ab5e773b2a1bb504707 Mon Sep 17 00:00:00 2001
From: mcbarton <matthew.c.barton at hotmail.co.uk>
Date: Thu, 14 Aug 2025 11:44:11 +0100
Subject: [PATCH 09/12] change over to Windows runner

---
 .github/workflows/ids-check.yml | 54 +++++++++++++++++++--------------
 1 file changed, 31 insertions(+), 23 deletions(-)

diff --git a/.github/workflows/ids-check.yml b/.github/workflows/ids-check.yml
index 4c596d0fbf4e5..0fd6cccc1f586 100644
--- a/.github/workflows/ids-check.yml
+++ b/.github/workflows/ids-check.yml
@@ -22,7 +22,7 @@ jobs:
   build:
     if: github.repository_owner == 'llvm'
     name: ids-check
-    runs-on: ubuntu-24.04
+    runs-on: windows-11-arm
 
     steps:
     - uses: actions/checkout at 11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -36,61 +36,69 @@ jobs:
         path: ${{ github.workspace }}/llvm-project
         fetch-depth: 2
 
-    - name: install dependencies
+    - name: Install dependencies
+      shell: pwsh
       run: |
-        sudo apt install -y clang-19 ninja-build libclang-19-dev
-        pip install lit
+        Invoke-WebRequest -Uri "https://github.com/llvm/llvm-project/releases/download/llvmorg-20.1.8/clang+llvm-20.1.8-aarch64-pc-windows-msvc.tar.xz" -OutFile "clang20.tar.xz"
+        & "C:\Program Files\Git\usr\bin\tar.exe" -xf .\clang20.tar.xz
+        choco install visualstudio2022community
+        pip install lit filecheck
 
     - name: Configure and build minimal LLVM for use by ids
+      shell: bash
       run: |
-        cmake -B ${{ github.workspace }}/llvm-project/build/ \
+        cmake -B C:/a/llvm-project/llvm-project/llvm-project/build/ \
               -D CMAKE_BUILD_TYPE=Release \
-              -S ${{ github.workspace }}/llvm-project/llvm/ \
+              -S C:/a/llvm-project/llvm-project/llvm-project/llvm/ \
               -D LLVM_ENABLE_PROJECTS=clang \
+              -D CMAKE_C_COMPILER=clang \
+              -D CMAKE_CXX_COMPILER=clang++ \
               -D LLVM_TARGETS_TO_BUILD="host" \
               -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
               -G Ninja
-        cd ${{ github.workspace }}/llvm-project/build/
+        cd C:/a/llvm-project/llvm-project/llvm-project/build/
         ninja -t targets all | grep "CommonTableGen: phony$" | grep -v "/" | sed 's/:.*//'
 
     - name: Configure ids
+      shell: bash
       run: |
-        cmake -B ${{ github.workspace }}/ids/build/ \
-              -S ${{ github.workspace }}/ids/ \
+        cmake -B C:/a/llvm-project/llvm-project/ids/build/ \
+              -S C:/a/llvm-project/llvm-project/ids/ \
                -D CMAKE_BUILD_TYPE=Release \
-               -D CMAKE_C_COMPILER=clang \
-               -D CMAKE_CXX_COMPILER=clang++ \
+               -D CMAKE_C_COMPILER="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/bin/clang" \
+               -D CMAKE_CXX_COMPILER="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/bin/clang++" \
                -D CMAKE_EXE_LINKER_FLAGS=-fuse-ld=lld \
-               -D LLVM_DIR=/usr/lib/llvm-19/lib/cmake/llvm/ \
-               -D Clang_DIR=/usr/lib/llvm-19/lib/cmake/clang/ \
-               -D FILECHECK_EXECUTABLE=$(which FileCheck-19) \
-               -D LIT_EXECUTABLE=$(which lit)
+               -D LLVM_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/lib/cmake/llvm/" \
+               -D Clang_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/lib/cmake/clang/" \
+               -D FILECHECK_EXECUTABLE=$(which filecheck) \
+               -D LIT_EXECUTABLE=$(which lit) \
+               -G Ninja
 
     - name: Build ids
+      shell: bash
       run: |
-        cmake --build ${{ github.workspace }}/ids/build \
-              --config Release \
-              --parallel $(nproc --all)
+        cmake --build C:/a/llvm-project/llvm-project/ids/build \
+              --config Release
 
     - name: Run ids over compilation database
+      shell: bash
       run: |
-        set -e
-        cd ${{ github.workspace }}/llvm-project
+        cd C:/a/llvm-project/llvm-project/llvm-project
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/**/*.h' ':!llvm/include/llvm/Debuginfod/' ':!llvm/include/llvm/Demangle/' )
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=LLVM_ABI --include-header="llvm/Support/Compiler.h" --extra-arg="-DLLVM_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --export-macro=LLVM_ABI --include-header="llvm/Support/Compiler.h" --extra-arg="-DLLVM_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm-c/**/*.h' )
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=LLVM_C_ABI --include-header="llvm-c/Visibility.h" --extra-arg="-DLLVM_C_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json --export-macro=LLVM_C_ABI --include-header="llvm-c/Visibility.h" --extra-arg="-DLLVM_C_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/Demangle/**/*.h' )
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=DEMANGLE_ABI --include-header="llvm/Demangle/Visibility.h" --extra-arg="-DEMANGLE_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json --export-macro=DEMANGLE_ABI --include-header="llvm/Demangle/Visibility.h" --extra-arg="-DEMANGLE_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi

>From e725ede7dc703016b3d62d27ba53def8511c8c4f Mon Sep 17 00:00:00 2001
From: mcbarton <150042563+mcbarton at users.noreply.github.com>
Date: Fri, 12 Sep 2025 09:18:41 +0100
Subject: [PATCH 10/12] Change back to Linux runner

---
 .github/workflows/ids-check.yml | 54 ++++++++++++++-------------------
 1 file changed, 23 insertions(+), 31 deletions(-)

diff --git a/.github/workflows/ids-check.yml b/.github/workflows/ids-check.yml
index 0fd6cccc1f586..4c596d0fbf4e5 100644
--- a/.github/workflows/ids-check.yml
+++ b/.github/workflows/ids-check.yml
@@ -22,7 +22,7 @@ jobs:
   build:
     if: github.repository_owner == 'llvm'
     name: ids-check
-    runs-on: windows-11-arm
+    runs-on: ubuntu-24.04
 
     steps:
     - uses: actions/checkout at 11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -36,69 +36,61 @@ jobs:
         path: ${{ github.workspace }}/llvm-project
         fetch-depth: 2
 
-    - name: Install dependencies
-      shell: pwsh
+    - name: install dependencies
       run: |
-        Invoke-WebRequest -Uri "https://github.com/llvm/llvm-project/releases/download/llvmorg-20.1.8/clang+llvm-20.1.8-aarch64-pc-windows-msvc.tar.xz" -OutFile "clang20.tar.xz"
-        & "C:\Program Files\Git\usr\bin\tar.exe" -xf .\clang20.tar.xz
-        choco install visualstudio2022community
-        pip install lit filecheck
+        sudo apt install -y clang-19 ninja-build libclang-19-dev
+        pip install lit
 
     - name: Configure and build minimal LLVM for use by ids
-      shell: bash
       run: |
-        cmake -B C:/a/llvm-project/llvm-project/llvm-project/build/ \
+        cmake -B ${{ github.workspace }}/llvm-project/build/ \
               -D CMAKE_BUILD_TYPE=Release \
-              -S C:/a/llvm-project/llvm-project/llvm-project/llvm/ \
+              -S ${{ github.workspace }}/llvm-project/llvm/ \
               -D LLVM_ENABLE_PROJECTS=clang \
-              -D CMAKE_C_COMPILER=clang \
-              -D CMAKE_CXX_COMPILER=clang++ \
               -D LLVM_TARGETS_TO_BUILD="host" \
               -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
               -G Ninja
-        cd C:/a/llvm-project/llvm-project/llvm-project/build/
+        cd ${{ github.workspace }}/llvm-project/build/
         ninja -t targets all | grep "CommonTableGen: phony$" | grep -v "/" | sed 's/:.*//'
 
     - name: Configure ids
-      shell: bash
       run: |
-        cmake -B C:/a/llvm-project/llvm-project/ids/build/ \
-              -S C:/a/llvm-project/llvm-project/ids/ \
+        cmake -B ${{ github.workspace }}/ids/build/ \
+              -S ${{ github.workspace }}/ids/ \
                -D CMAKE_BUILD_TYPE=Release \
-               -D CMAKE_C_COMPILER="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/bin/clang" \
-               -D CMAKE_CXX_COMPILER="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/bin/clang++" \
+               -D CMAKE_C_COMPILER=clang \
+               -D CMAKE_CXX_COMPILER=clang++ \
                -D CMAKE_EXE_LINKER_FLAGS=-fuse-ld=lld \
-               -D LLVM_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/lib/cmake/llvm/" \
-               -D Clang_DIR="C:/a/llvm-project/llvm-project/clang+llvm-20.1.8-aarch64-pc-windows-msvc/lib/cmake/clang/" \
-               -D FILECHECK_EXECUTABLE=$(which filecheck) \
-               -D LIT_EXECUTABLE=$(which lit) \
-               -G Ninja
+               -D LLVM_DIR=/usr/lib/llvm-19/lib/cmake/llvm/ \
+               -D Clang_DIR=/usr/lib/llvm-19/lib/cmake/clang/ \
+               -D FILECHECK_EXECUTABLE=$(which FileCheck-19) \
+               -D LIT_EXECUTABLE=$(which lit)
 
     - name: Build ids
-      shell: bash
       run: |
-        cmake --build C:/a/llvm-project/llvm-project/ids/build \
-              --config Release
+        cmake --build ${{ github.workspace }}/ids/build \
+              --config Release \
+              --parallel $(nproc --all)
 
     - name: Run ids over compilation database
-      shell: bash
       run: |
-        cd C:/a/llvm-project/llvm-project/llvm-project
+        set -e
+        cd ${{ github.workspace }}/llvm-project
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/**/*.h' ':!llvm/include/llvm/Debuginfod/' ':!llvm/include/llvm/Demangle/' )
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --export-macro=LLVM_ABI --include-header="llvm/Support/Compiler.h" --extra-arg="-DLLVM_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=LLVM_ABI --include-header="llvm/Support/Compiler.h" --extra-arg="-DLLVM_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm-c/**/*.h' )
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json --export-macro=LLVM_C_ABI --include-header="llvm-c/Visibility.h" --extra-arg="-DLLVM_C_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=LLVM_C_ABI --include-header="llvm-c/Visibility.h" --extra-arg="-DLLVM_C_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/Demangle/**/*.h' )
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json --export-macro=DEMANGLE_ABI --include-header="llvm/Demangle/Visibility.h" --extra-arg="-DEMANGLE_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
+            ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=DEMANGLE_ABI --include-header="llvm/Demangle/Visibility.h" --extra-arg="-DEMANGLE_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi

>From 973021812f939a6da8ea94766a56222fa116bc99 Mon Sep 17 00:00:00 2001
From: mcbarton <150042563+mcbarton at users.noreply.github.com>
Date: Fri, 12 Sep 2025 15:37:48 +0100
Subject: [PATCH 11/12] Debug why ids check workflow not working as expected
 Linux runner

---
 .github/workflows/ids-check.yml | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/.github/workflows/ids-check.yml b/.github/workflows/ids-check.yml
index 4c596d0fbf4e5..97649f7ddeb45 100644
--- a/.github/workflows/ids-check.yml
+++ b/.github/workflows/ids-check.yml
@@ -77,20 +77,26 @@ jobs:
         set -e
         cd ${{ github.workspace }}/llvm-project
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/**/*.h' ':!llvm/include/llvm/Debuginfod/' ':!llvm/include/llvm/Demangle/' )
+	echo $H_OR_CPP_FILES_CHANGED_LAST_COMMIT
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
+	    echo $file
             ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=LLVM_ABI --include-header="llvm/Support/Compiler.h" --extra-arg="-DLLVM_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm-c/**/*.h' )
+	echo $H_OR_CPP_FILES_CHANGED_LAST_COMMIT
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
+	    echo $file
             ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=LLVM_C_ABI --include-header="llvm-c/Visibility.h" --extra-arg="-DLLVM_C_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/Demangle/**/*.h' )
+	echo $H_OR_CPP_FILES_CHANGED_LAST_COMMIT
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
+	    echo $file
             ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=DEMANGLE_ABI --include-header="llvm/Demangle/Visibility.h" --extra-arg="-DEMANGLE_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi

>From e986879154cbf0b4001223abe4aaefb23c8c9071 Mon Sep 17 00:00:00 2001
From: mcbarton <matthew.c.barton at hotmail.co.uk>
Date: Fri, 12 Sep 2025 15:40:49 +0100
Subject: [PATCH 12/12] Fix ids check workflow

---
 .github/workflows/ids-check.yml | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/ids-check.yml b/.github/workflows/ids-check.yml
index 97649f7ddeb45..d112f71a6e039 100644
--- a/.github/workflows/ids-check.yml
+++ b/.github/workflows/ids-check.yml
@@ -77,26 +77,26 @@ jobs:
         set -e
         cd ${{ github.workspace }}/llvm-project
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/**/*.h' ':!llvm/include/llvm/Debuginfod/' ':!llvm/include/llvm/Demangle/' )
-	echo $H_OR_CPP_FILES_CHANGED_LAST_COMMIT
+        echo $H_OR_CPP_FILES_CHANGED_LAST_COMMIT
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-	    echo $file
+          echo $file
             ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=LLVM_ABI --include-header="llvm/Support/Compiler.h" --extra-arg="-DLLVM_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm-c/**/*.h' )
-	echo $H_OR_CPP_FILES_CHANGED_LAST_COMMIT
+        echo $H_OR_CPP_FILES_CHANGED_LAST_COMMIT
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-	    echo $file
+            echo $file
             ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=LLVM_C_ABI --include-header="llvm-c/Visibility.h" --extra-arg="-DLLVM_C_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi
         export H_OR_CPP_FILES_CHANGED_LAST_COMMIT=$(git diff --name-only HEAD~1 HEAD -- 'llvm/include/llvm/Demangle/**/*.h' )
-	echo $H_OR_CPP_FILES_CHANGED_LAST_COMMIT
+        echo $H_OR_CPP_FILES_CHANGED_LAST_COMMIT
         if [ ! -z "${H_OR_CPP_FILES_CHANGED_LAST_COMMIT}" ]; then
           for file in $H_OR_CPP_FILES_CHANGED_LAST_COMMIT; do
-	    echo $file
+          echo $file
             ${{ github.workspace }}/ids/build/bin/idt -p ${{ github.workspace }}/llvm-project/build/compile_commands.json  --apply-fixits --export-macro=DEMANGLE_ABI --include-header="llvm/Demangle/Visibility.h" --extra-arg="-DEMANGLE_ABI=__attribute__((visibility(\"default\")))" --extra-arg="-Wno-macro-redefined" $file
           done
         fi



More information about the llvm-commits mailing list