diff --git a/.editorconfig b/.editorconfig
index e0151b57..3467ebf9 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -449,5 +449,21 @@ csharp_using_directive_placement = outside_namespace:error
###############################################################################
# Set dotnet analyzer rules to:
# disable CA1401: P/Invoke method '*' should not be visible
+# disable SYSLIB1054: Mark the method '*' with 'LibraryImportAttribute' instead of 'DllImportAttribute' to generate P/Invoke marshalling code at compile time
###############################################################################
+[*.cs]
dotnet_diagnostic.CA1401.severity = silent
+dotnet_diagnostic.SYSLIB1054.severity = silent
+
+###############################################################################
+# Set dotnet analyzer rules to:
+# disable various SYSLIB analyzers
+# due to unexpected exceptions thrown in the IDE
+###############################################################################
+[*.cs]
+dotnet_diagnostic.SYSLIB1055.severity = silent
+dotnet_diagnostic.SYSLIB1056.severity = silent
+dotnet_diagnostic.SYSLIB1057.severity = silent
+dotnet_diagnostic.SYSLIB1058.severity = silent
+dotnet_diagnostic.SYSLIB1060.severity = silent
+dotnet_diagnostic.SYSLIB1061.severity = silent
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9d303ac5..08aef577 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,6 +1,6 @@
cmake_minimum_required(VERSION 3.13)
-project(ClangSharp VERSION 14.0.0)
+project(ClangSharp VERSION 15.0.0)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
diff --git a/ClangSharp.sln b/ClangSharp.sln
index f354198a..9775fc13 100644
--- a/ClangSharp.sln
+++ b/ClangSharp.sln
@@ -13,8 +13,11 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
CODE_OF_CONDUCT.md = CODE_OF_CONDUCT.md
Directory.Build.props = Directory.Build.props
Directory.Build.targets = Directory.Build.targets
+ Directory.Packages.props = Directory.Packages.props
LICENSE.md = LICENSE.md
NOTICE.md = NOTICE.md
+ NuGet.config = NuGet.config
+ Open.snk = Open.snk
pack.cmd = pack.cmd
pack.sh = pack.sh
README.md = README.md
@@ -165,9 +168,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "libclang.runtime.ubuntu.20.
packages\libclang\libclang.runtime.ubuntu.20.04-x64\libclang.runtime.ubuntu.20.04-x64.nuspec = packages\libclang\libclang.runtime.ubuntu.20.04-x64\libclang.runtime.ubuntu.20.04-x64.nuspec
EndProjectSection
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "libclang.runtime.ubuntu.21.10-x64", "libclang.runtime.ubuntu.21.10-x64", "{F3254760-351E-4886-A243-FF3778837C40}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "libclang.runtime.ubuntu.22.04-x64", "libclang.runtime.ubuntu.22.04-x64", "{F3254760-351E-4886-A243-FF3778837C40}"
ProjectSection(SolutionItems) = preProject
- packages\libclang\libclang.runtime.ubuntu.21.10-x64\libclang.runtime.ubuntu.21.10-x64.nuspec = packages\libclang\libclang.runtime.ubuntu.21.10-x64\libclang.runtime.ubuntu.21.10-x64.nuspec
+ packages\libclang\libclang.runtime.ubuntu.22.04-x64\libclang.runtime.ubuntu.22.04-x64.nuspec = packages\libclang\libclang.runtime.ubuntu.22.04-x64\libclang.runtime.ubuntu.22.04-x64.nuspec
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "libclang.runtime.win-arm64", "libclang.runtime.win-arm64", "{B3F3A831-DA09-40A2-A25C-DE47A58BB93B}"
@@ -175,9 +178,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "libclang.runtime.win-arm64"
packages\libclang\libclang.runtime.win-arm64\libclang.runtime.win-arm64.nuspec = packages\libclang\libclang.runtime.win-arm64\libclang.runtime.win-arm64.nuspec
EndProjectSection
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "libClangSharp.runtime.ubuntu.21.10-x64", "libClangSharp.runtime.ubuntu.21.10-x64", "{D90C3C52-DA8D-44BB-B8B0-3E4EF4CBF4DC}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "libClangSharp.runtime.ubuntu.22.04-x64", "libClangSharp.runtime.ubuntu.22.04-x64", "{D90C3C52-DA8D-44BB-B8B0-3E4EF4CBF4DC}"
ProjectSection(SolutionItems) = preProject
- packages\libClangSharp\libClangSharp.runtime.ubuntu.21.10-x64\libClangSharp.runtime.ubuntu.21.10-x64.nuspec = packages\libClangSharp\libClangSharp.runtime.ubuntu.21.10-x64\libClangSharp.runtime.ubuntu.21.10-x64.nuspec
+ packages\libClangSharp\libClangSharp.runtime.ubuntu.22.04-x64\libClangSharp.runtime.ubuntu.22.04-x64.nuspec = packages\libClangSharp\libClangSharp.runtime.ubuntu.22.04-x64\libClangSharp.runtime.ubuntu.22.04-x64.nuspec
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "libClangSharp.runtime.win-arm64", "libClangSharp.runtime.win-arm64", "{69B805C6-230D-49A2-A569-3CAC2EC9F293}"
@@ -204,6 +207,26 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "workflows", "workflows", "{
.github\workflows\ci.yml = .github\workflows\ci.yml
EndProjectSection
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "libclang.runtime.osx-arm64", "libclang.runtime.osx-arm64", "{7A12C7A3-3152-49C2-A831-3DA77922BF2A}"
+ ProjectSection(SolutionItems) = preProject
+ packages\libclang\libclang.runtime.osx-arm64\libclang.runtime.osx-arm64.nuspec = packages\libclang\libclang.runtime.osx-arm64\libclang.runtime.osx-arm64.nuspec
+ EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "libclang.runtime.linux-x64", "libclang.runtime.linux-x64", "{1CA1A906-1A19-46D5-8AC4-87C13523899B}"
+ ProjectSection(SolutionItems) = preProject
+ packages\libclang\libclang.runtime.linux-x64\libclang.runtime.linux-x64.nuspec = packages\libclang\libclang.runtime.linux-x64\libclang.runtime.linux-x64.nuspec
+ EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "libClangSharp.runtime.linux-x64", "libClangSharp.runtime.linux-x64", "{3107B5D1-CB86-425E-B756-4FBCE9FB2A86}"
+ ProjectSection(SolutionItems) = preProject
+ packages\libClangSharp\libClangSharp.runtime.linux-x64\libClangSharp.runtime.linux-x64.nuspec = packages\libClangSharp\libClangSharp.runtime.linux-x64\libClangSharp.runtime.linux-x64.nuspec
+ EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "libClangSharp.runtime.osx-arm64", "libClangSharp.runtime.osx-arm64", "{A693E897-FFB9-4621-A2B1-030EAC9D0810}"
+ ProjectSection(SolutionItems) = preProject
+ packages\libClangSharp\libClangSharp.runtime.osx-arm64\libClangSharp.runtime.osx-arm64.nuspec = packages\libClangSharp\libClangSharp.runtime.osx-arm64\libClangSharp.runtime.osx-arm64.nuspec
+ EndProjectSection
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -271,6 +294,10 @@ Global
{8FD0223B-88AD-4FA9-AE29-0B446FF17922} = {DFACF682-2673-4AE1-8F10-816D025C2D45}
{B3A22C21-0699-4963-B665-F9AA74F0AF08} = {EDEC2130-DA14-4415-91A3-225733FB61F8}
{034EBD16-E96F-4530-B37D-30B16C4E9876} = {FF42B475-5025-45BA-B278-60F29B53C023}
+ {7A12C7A3-3152-49C2-A831-3DA77922BF2A} = {DFACF682-2673-4AE1-8F10-816D025C2D45}
+ {1CA1A906-1A19-46D5-8AC4-87C13523899B} = {DFACF682-2673-4AE1-8F10-816D025C2D45}
+ {3107B5D1-CB86-425E-B756-4FBCE9FB2A86} = {EDEC2130-DA14-4415-91A3-225733FB61F8}
+ {A693E897-FFB9-4621-A2B1-030EAC9D0810} = {EDEC2130-DA14-4415-91A3-225733FB61F8}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {A9D18E0B-5409-457D-B5F3-0E217136BB01}
diff --git a/Directory.Build.props b/Directory.Build.props
index a1e4d850..1974167d 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -14,16 +14,18 @@
$(MSBuildThisFileDirectory)artifacts/
$(ClangSharpProjectCategory)/$(MSBuildProjectName)
- https://github.com/dotnet/ClangSharp/
+ https://github.com/dotnet/clangsharp/
true
+ preview
$(BaseArtifactsPath)obj/$(BaseArtifactsPathSuffix)/
embedded
false
- CS0659;$(NoWarn)
+ true
+ enable
true
true
true
@@ -42,7 +44,8 @@
true
$(BaseArtifactsPath)pkg/$(Configuration)/
ClangSharp
- 14.0.0
+ ClangSharp
+ 15.0.0
rc1
pr
@@ -65,9 +68,7 @@
true
false
git
-
- https://api.nuget.org/v3/index.json;
-
+ $(MSBuildThisFileDirectory)NuGet.config
true
diff --git a/Directory.Build.targets b/Directory.Build.targets
index c2433f53..ee04b707 100644
--- a/Directory.Build.targets
+++ b/Directory.Build.targets
@@ -12,7 +12,7 @@
- $(DefineConstants);$(OS)
+ $(NoWarn);AD0001
@@ -20,28 +20,21 @@
$(Version).$(GITHUB_RUN_ID)
+
+
+ true
+
+
+
+
+ true
+ true
+
+
$(NETCoreSdkRuntimeIdentifier)
$(OVERRIDE_RUNTIME_IDENTIFIER)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Directory.Packages.props b/Directory.Packages.props
new file mode 100644
index 00000000..b45d2ecd
--- /dev/null
+++ b/Directory.Packages.props
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/NuGet.config b/NuGet.config
new file mode 100644
index 00000000..804d4684
--- /dev/null
+++ b/NuGet.config
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/README.md b/README.md
index b77a370c..20ff7740 100644
--- a/README.md
+++ b/README.md
@@ -11,7 +11,7 @@ A convenience package which provides the native libClang library for several pla
A helper package which exposes many Clang APIs missing from libClang is provided here: https://www.nuget.org/packages/libClangSharp
-NOTE: libclang and libClangSharp are meta-packages which point to the platform-specific runtime packages ([e.g.](https://www.nuget.org/packages/libClangSharp.runtime.win-x64/14.0.0-beta1); see others owned by [tannergooding](https://www.nuget.org/profiles/tannergooding)). Several manual steps may be required to use them, see discussion in [#46](https://github.com/dotnet/ClangSharp/issues/46) and [#118](https://github.com/dotnet/ClangSharp/issues/118).
+NOTE: libclang and libClangSharp are meta-packages which point to the platform-specific runtime packages ([e.g.](https://www.nuget.org/packages/libClangSharp.runtime.win-x64/15.0.0); see others owned by [tannergooding](https://www.nuget.org/profiles/tannergooding)). Several manual steps may be required to use them, see discussion in [#46](https://github.com/dotnet/ClangSharp/issues/46) and [#118](https://github.com/dotnet/ClangSharp/issues/118).
Nightly packages are available via the NuGet Feed URL: https://pkgs.clangsharp.dev/index.json
@@ -71,7 +71,7 @@ Building this requires [CMake 3.13 or later](https://cmake.org/download/) as wel
To succesfully build `libClangSharp` you must first build Clang (https://clang.llvm.org/get_started.html). The process done on Windows is roughly:
```cmd
-git clone --single-branch --branch llvmorg-14.0.0 https://github.com/llvm/llvm-project
+git clone --single-branch --branch llvmorg-15.0.0 https://github.com/llvm/llvm-project
cd llvm-project
mkdir artifacts/bin
cd artifacts/bin
@@ -116,7 +116,7 @@ This program will take a given set of C or C++ header files and generate C# bind
The simplest and recommended setup is to install the generator as a .NET tool and then use response files:
```
-dotnet tool install --global ClangSharpPInvokeGenerator --version 14.0.0-beta3
+dotnet tool install --global ClangSharpPInvokeGenerator --version 15.0.0
ClangSharpPInvokeGenerator @generate.rsp
```
diff --git a/packages/libClangSharp/libClangSharp.runtime.freebsd.12-x64/libClangSharp.runtime.freebsd.12-x64.nuspec b/packages/libClangSharp/libClangSharp.runtime.freebsd.12-x64/libClangSharp.runtime.freebsd.12-x64.nuspec
index 50435f6e..340b699a 100644
--- a/packages/libClangSharp/libClangSharp.runtime.freebsd.12-x64/libClangSharp.runtime.freebsd.12-x64.nuspec
+++ b/packages/libClangSharp/libClangSharp.runtime.freebsd.12-x64/libClangSharp.runtime.freebsd.12-x64.nuspec
@@ -2,7 +2,7 @@
libClangSharp.runtime.freebsd.12-x64
- 14.0.0-beta1
+ 15.0.0
Microsoft and Contributors
Microsoft and Contributors
true
diff --git a/packages/libClangSharp/libClangSharp.runtime.freebsd.13-x64/libClangSharp.runtime.freebsd.13-x64.nuspec b/packages/libClangSharp/libClangSharp.runtime.freebsd.13-x64/libClangSharp.runtime.freebsd.13-x64.nuspec
index 890dc5fe..def1c760 100644
--- a/packages/libClangSharp/libClangSharp.runtime.freebsd.13-x64/libClangSharp.runtime.freebsd.13-x64.nuspec
+++ b/packages/libClangSharp/libClangSharp.runtime.freebsd.13-x64/libClangSharp.runtime.freebsd.13-x64.nuspec
@@ -2,7 +2,7 @@
libClangSharp.runtime.freebsd.13-x64
- 14.0.0-beta1
+ 15.0.0
Microsoft and Contributors
Microsoft and Contributors
true
diff --git a/packages/libClangSharp/libClangSharp.runtime.linux-arm64/libClangSharp.runtime.linux-arm64.nuspec b/packages/libClangSharp/libClangSharp.runtime.linux-arm64/libClangSharp.runtime.linux-arm64.nuspec
index 82dbaec5..fe3fdb41 100644
--- a/packages/libClangSharp/libClangSharp.runtime.linux-arm64/libClangSharp.runtime.linux-arm64.nuspec
+++ b/packages/libClangSharp/libClangSharp.runtime.linux-arm64/libClangSharp.runtime.linux-arm64.nuspec
@@ -2,7 +2,7 @@
libClangSharp.runtime.linux-arm64
- 14.0.0-beta1
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
diff --git a/packages/libClangSharp/libClangSharp.runtime.linux-x64/libClangSharp.runtime.linux-x64.nuspec b/packages/libClangSharp/libClangSharp.runtime.linux-x64/libClangSharp.runtime.linux-x64.nuspec
new file mode 100644
index 00000000..4ba947e2
--- /dev/null
+++ b/packages/libClangSharp/libClangSharp.runtime.linux-x64/libClangSharp.runtime.linux-x64.nuspec
@@ -0,0 +1,20 @@
+
+
+
+ libClangSharp.runtime.linux-x64
+ 15.0.0
+ .NET Foundation and Contributors
+ .NET Foundation and Contributors
+ true
+ MIT
+ https://github.com/dotnet/clangsharp
+ linux x64 native library for libClangSharp.
+ Copyright © .NET Foundation and Contributors
+
+
+
+
+
+
+
+
diff --git a/packages/libClangSharp/libClangSharp.runtime.osx-arm64/libClangSharp.runtime.osx-arm64.nuspec b/packages/libClangSharp/libClangSharp.runtime.osx-arm64/libClangSharp.runtime.osx-arm64.nuspec
new file mode 100644
index 00000000..1835f880
--- /dev/null
+++ b/packages/libClangSharp/libClangSharp.runtime.osx-arm64/libClangSharp.runtime.osx-arm64.nuspec
@@ -0,0 +1,20 @@
+
+
+
+ libClangSharp.runtime.osx-arm64
+ 15.0.0
+ .NET Foundation and Contributors
+ .NET Foundation and Contributors
+ true
+ MIT
+ https://github.com/dotnet/clangsharp
+ osx arm64 native library for libClangSharp.
+ Copyright © .NET Foundation and Contributors
+
+
+
+
+
+
+
+
diff --git a/packages/libClangSharp/libClangSharp.runtime.osx-x64/libClangSharp.runtime.osx-x64.nuspec b/packages/libClangSharp/libClangSharp.runtime.osx-x64/libClangSharp.runtime.osx-x64.nuspec
index 29aa6e26..ac6bd3de 100644
--- a/packages/libClangSharp/libClangSharp.runtime.osx-x64/libClangSharp.runtime.osx-x64.nuspec
+++ b/packages/libClangSharp/libClangSharp.runtime.osx-x64/libClangSharp.runtime.osx-x64.nuspec
@@ -2,7 +2,7 @@
libClangSharp.runtime.osx-x64
- 14.0.0-beta1
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
diff --git a/packages/libClangSharp/libClangSharp.runtime.ubuntu.18.04-x64/libClangSharp.runtime.ubuntu.18.04-x64.nuspec b/packages/libClangSharp/libClangSharp.runtime.ubuntu.18.04-x64/libClangSharp.runtime.ubuntu.18.04-x64.nuspec
index bc379b95..1751d148 100644
--- a/packages/libClangSharp/libClangSharp.runtime.ubuntu.18.04-x64/libClangSharp.runtime.ubuntu.18.04-x64.nuspec
+++ b/packages/libClangSharp/libClangSharp.runtime.ubuntu.18.04-x64/libClangSharp.runtime.ubuntu.18.04-x64.nuspec
@@ -2,7 +2,7 @@
libClangSharp.runtime.ubuntu.18.04-x64
- 14.0.0-beta1
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
diff --git a/packages/libClangSharp/libClangSharp.runtime.ubuntu.20.04-x64/libClangSharp.runtime.ubuntu.20.04-x64.nuspec b/packages/libClangSharp/libClangSharp.runtime.ubuntu.20.04-x64/libClangSharp.runtime.ubuntu.20.04-x64.nuspec
index 9bdef46e..4d85a7ca 100644
--- a/packages/libClangSharp/libClangSharp.runtime.ubuntu.20.04-x64/libClangSharp.runtime.ubuntu.20.04-x64.nuspec
+++ b/packages/libClangSharp/libClangSharp.runtime.ubuntu.20.04-x64/libClangSharp.runtime.ubuntu.20.04-x64.nuspec
@@ -2,7 +2,7 @@
libClangSharp.runtime.ubuntu.20.04-x64
- 14.0.0-beta1
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
diff --git a/packages/libClangSharp/libClangSharp.runtime.ubuntu.21.10-x64/libClangSharp.runtime.ubuntu.21.10-x64.nuspec b/packages/libClangSharp/libClangSharp.runtime.ubuntu.22.04-x64/libClangSharp.runtime.ubuntu.22.04-x64.nuspec
similarity index 78%
rename from packages/libClangSharp/libClangSharp.runtime.ubuntu.21.10-x64/libClangSharp.runtime.ubuntu.21.10-x64.nuspec
rename to packages/libClangSharp/libClangSharp.runtime.ubuntu.22.04-x64/libClangSharp.runtime.ubuntu.22.04-x64.nuspec
index e07338da..6b6d18f8 100644
--- a/packages/libClangSharp/libClangSharp.runtime.ubuntu.21.10-x64/libClangSharp.runtime.ubuntu.21.10-x64.nuspec
+++ b/packages/libClangSharp/libClangSharp.runtime.ubuntu.22.04-x64/libClangSharp.runtime.ubuntu.22.04-x64.nuspec
@@ -1,20 +1,20 @@
- libClangSharp.runtime.ubuntu.21.10-x64
- 14.0.0-beta1
+ libClangSharp.runtime.ubuntu.22.04-x64
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
MIT
https://github.com/dotnet/clangsharp
- ubuntu 21.10 x64 native library for libClangSharp.
+ ubuntu 22.04 x64 native library for libClangSharp.
Copyright © .NET Foundation and Contributors
-
+
diff --git a/packages/libClangSharp/libClangSharp.runtime.win-arm64/libClangSharp.runtime.win-arm64.nuspec b/packages/libClangSharp/libClangSharp.runtime.win-arm64/libClangSharp.runtime.win-arm64.nuspec
index b14dc91d..8c6774e0 100644
--- a/packages/libClangSharp/libClangSharp.runtime.win-arm64/libClangSharp.runtime.win-arm64.nuspec
+++ b/packages/libClangSharp/libClangSharp.runtime.win-arm64/libClangSharp.runtime.win-arm64.nuspec
@@ -2,7 +2,7 @@
libClangSharp.runtime.win-arm64
- 14.0.0-beta1
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
diff --git a/packages/libClangSharp/libClangSharp.runtime.win-x64/libClangSharp.runtime.win-x64.nuspec b/packages/libClangSharp/libClangSharp.runtime.win-x64/libClangSharp.runtime.win-x64.nuspec
index 7f701a3f..e04fbd79 100644
--- a/packages/libClangSharp/libClangSharp.runtime.win-x64/libClangSharp.runtime.win-x64.nuspec
+++ b/packages/libClangSharp/libClangSharp.runtime.win-x64/libClangSharp.runtime.win-x64.nuspec
@@ -2,7 +2,7 @@
libClangSharp.runtime.win-x64
- 14.0.0-beta1
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
diff --git a/packages/libClangSharp/libClangSharp.runtime.win-x86/libClangSharp.runtime.win-x86.nuspec b/packages/libClangSharp/libClangSharp.runtime.win-x86/libClangSharp.runtime.win-x86.nuspec
index b7b2dcf9..bf3cbf61 100644
--- a/packages/libClangSharp/libClangSharp.runtime.win-x86/libClangSharp.runtime.win-x86.nuspec
+++ b/packages/libClangSharp/libClangSharp.runtime.win-x86/libClangSharp.runtime.win-x86.nuspec
@@ -2,7 +2,7 @@
libClangSharp.runtime.win-x86
- 14.0.0-beta1
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
diff --git a/packages/libClangSharp/libClangSharp/libClangSharp.nuspec b/packages/libClangSharp/libClangSharp/libClangSharp.nuspec
index 51ad6b10..81ed9464 100644
--- a/packages/libClangSharp/libClangSharp/libClangSharp.nuspec
+++ b/packages/libClangSharp/libClangSharp/libClangSharp.nuspec
@@ -2,7 +2,7 @@
libClangSharp
- 14.0.0-beta1
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
@@ -12,9 +12,6 @@
Copyright © .NET Foundation and Contributors
-
-
-
diff --git a/packages/libClangSharp/libClangSharp/runtime.json b/packages/libClangSharp/libClangSharp/runtime.json
index 680eaae4..1f416faf 100644
--- a/packages/libClangSharp/libClangSharp/runtime.json
+++ b/packages/libClangSharp/libClangSharp/runtime.json
@@ -2,52 +2,62 @@
"runtimes": {
"freebsd.12-x64": {
"libClangSharp": {
- "libClangSharp.runtime.freebsd.12-x64": "14.0.0-beta1"
+ "libClangSharp.runtime.freebsd.12-x64": "15.0.0"
}
},
"freebsd.13-x64": {
"libClangSharp": {
- "libClangSharp.runtime.freebsd.13-x64": "14.0.0-beta1"
+ "libClangSharp.runtime.freebsd.13-x64": "15.0.0"
}
},
"linux-arm64": {
"libClangSharp": {
- "libClangSharp.runtime.linux-arm64": "14.0.0-beta1"
+ "libClangSharp.runtime.linux-arm64": "15.0.0"
+ }
+ },
+ "linux-x64": {
+ "libClangSharp": {
+ "libClangSharp.runtime.linux-x64": "15.0.0"
+ }
+ },
+ "osx-arm64": {
+ "libClangSharp": {
+ "libClangSharp.runtime.osx-arm64": "15.0.0"
}
},
"osx-x64": {
"libClangSharp": {
- "libClangSharp.runtime.osx-x64": "14.0.0-beta1"
+ "libClangSharp.runtime.osx-x64": "15.0.0"
}
},
"ubuntu.18.04-x64": {
"libClangSharp": {
- "libClangSharp.runtime.ubuntu.18.04-x64": "14.0.0-beta1"
+ "libClangSharp.runtime.ubuntu.18.04-x64": "15.0.0"
}
},
"ubuntu.20.04-x64": {
"libClangSharp": {
- "libClangSharp.runtime.ubuntu.20.04-x64": "14.0.0-beta1"
+ "libClangSharp.runtime.ubuntu.20.04-x64": "15.0.0"
}
},
- "ubuntu.21.10-x64": {
+ "ubuntu.22.04-x64": {
"libClangSharp": {
- "libClangSharp.runtime.ubuntu.21.10-x64": "14.0.0-beta1"
+ "libClangSharp.runtime.ubuntu.22.04-x64": "15.0.0"
}
},
"win-arm64": {
"libClangSharp": {
- "libClangSharp.runtime.win-arm64": "14.0.0-beta1"
+ "libClangSharp.runtime.win-arm64": "15.0.0"
}
},
"win-x64": {
"libClangSharp": {
- "libClangSharp.runtime.win-x64": "14.0.0-beta1"
+ "libClangSharp.runtime.win-x64": "15.0.0"
}
},
"win-x86": {
"libClangSharp": {
- "libClangSharp.runtime.win-x86": "14.0.0-beta1"
+ "libClangSharp.runtime.win-x86": "15.0.0"
}
}
}
diff --git a/packages/libclang/libclang.runtime.freebsd.12-x64/libclang.runtime.freebsd.12-x64.nuspec b/packages/libclang/libclang.runtime.freebsd.12-x64/libclang.runtime.freebsd.12-x64.nuspec
index b12c2270..64fa87db 100644
--- a/packages/libclang/libclang.runtime.freebsd.12-x64/libclang.runtime.freebsd.12-x64.nuspec
+++ b/packages/libclang/libclang.runtime.freebsd.12-x64/libclang.runtime.freebsd.12-x64.nuspec
@@ -2,7 +2,7 @@
libclang.runtime.freebsd.12-x64
- 14.0.0
+ 15.0.0
Microsoft and Contributors
Microsoft and Contributors
true
@@ -10,7 +10,7 @@
https://github.com/dotnet/clangsharp
freebsd 12 x64 native library for libclang.
Copyright © LLVM Project
-
+
diff --git a/packages/libclang/libclang.runtime.freebsd.13-x64/libclang.runtime.freebsd.13-x64.nuspec b/packages/libclang/libclang.runtime.freebsd.13-x64/libclang.runtime.freebsd.13-x64.nuspec
index a9d2fa4f..d5d6e516 100644
--- a/packages/libclang/libclang.runtime.freebsd.13-x64/libclang.runtime.freebsd.13-x64.nuspec
+++ b/packages/libclang/libclang.runtime.freebsd.13-x64/libclang.runtime.freebsd.13-x64.nuspec
@@ -2,7 +2,7 @@
libclang.runtime.freebsd.13-x64
- 14.0.0
+ 15.0.0
Microsoft and Contributors
Microsoft and Contributors
true
@@ -10,7 +10,7 @@
https://github.com/dotnet/clangsharp
freebsd 13 x64 native library for libclang.
Copyright © LLVM Project
-
+
diff --git a/packages/libclang/libclang.runtime.linux-arm64/libclang.runtime.linux-arm64.nuspec b/packages/libclang/libclang.runtime.linux-arm64/libclang.runtime.linux-arm64.nuspec
index 2fc218e5..59cd3d07 100644
--- a/packages/libclang/libclang.runtime.linux-arm64/libclang.runtime.linux-arm64.nuspec
+++ b/packages/libclang/libclang.runtime.linux-arm64/libclang.runtime.linux-arm64.nuspec
@@ -2,7 +2,7 @@
libclang.runtime.linux-arm64
- 14.0.0
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
@@ -10,7 +10,7 @@
https://github.com/dotnet/clangsharp
linux arm64 native library for libclang.
Copyright © LLVM Project
-
+
diff --git a/packages/libclang/libclang.runtime.linux-x64/libclang.runtime.linux-x64.nuspec b/packages/libclang/libclang.runtime.linux-x64/libclang.runtime.linux-x64.nuspec
new file mode 100644
index 00000000..98cce586
--- /dev/null
+++ b/packages/libclang/libclang.runtime.linux-x64/libclang.runtime.linux-x64.nuspec
@@ -0,0 +1,19 @@
+
+
+
+ libclang.runtime.linux-x64
+ 15.0.0
+ .NET Foundation and Contributors
+ .NET Foundation and Contributors
+ true
+ Apache-2.0 WITH LLVM-exception
+ https://github.com/dotnet/clangsharp
+ linux x64 native library for libclang.
+ Copyright © LLVM Project
+
+
+
+
+
+
+
diff --git a/packages/libclang/libclang.runtime.osx-arm64/libclang.runtime.osx-arm64.nuspec b/packages/libclang/libclang.runtime.osx-arm64/libclang.runtime.osx-arm64.nuspec
new file mode 100644
index 00000000..2eeb5a0a
--- /dev/null
+++ b/packages/libclang/libclang.runtime.osx-arm64/libclang.runtime.osx-arm64.nuspec
@@ -0,0 +1,19 @@
+
+
+
+ libclang.runtime.osx-arm64
+ 15.0.0
+ .NET Foundation and Contributors
+ .NET Foundation and Contributors
+ true
+ Apache-2.0 WITH LLVM-exception
+ https://github.com/dotnet/clangsharp
+ osx arm64 native library for libclang.
+ Copyright © LLVM Project
+
+
+
+
+
+
+
diff --git a/packages/libclang/libclang.runtime.osx-x64/libclang.runtime.osx-x64.nuspec b/packages/libclang/libclang.runtime.osx-x64/libclang.runtime.osx-x64.nuspec
index 09eb4714..27b5c62a 100644
--- a/packages/libclang/libclang.runtime.osx-x64/libclang.runtime.osx-x64.nuspec
+++ b/packages/libclang/libclang.runtime.osx-x64/libclang.runtime.osx-x64.nuspec
@@ -2,7 +2,7 @@
libclang.runtime.osx-x64
- 14.0.0
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
@@ -10,7 +10,7 @@
https://github.com/dotnet/clangsharp
osx x64 native library for libclang.
Copyright © LLVM Project
-
+
diff --git a/packages/libclang/libclang.runtime.ubuntu.18.04-x64/libclang.runtime.ubuntu.18.04-x64.nuspec b/packages/libclang/libclang.runtime.ubuntu.18.04-x64/libclang.runtime.ubuntu.18.04-x64.nuspec
index 564cb8c6..10cbb23d 100644
--- a/packages/libclang/libclang.runtime.ubuntu.18.04-x64/libclang.runtime.ubuntu.18.04-x64.nuspec
+++ b/packages/libclang/libclang.runtime.ubuntu.18.04-x64/libclang.runtime.ubuntu.18.04-x64.nuspec
@@ -2,7 +2,7 @@
libclang.runtime.ubuntu.18.04-x64
- 14.0.0
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
@@ -10,7 +10,7 @@
https://github.com/dotnet/clangsharp
ubuntu 18.04 x64 native library for libclang.
Copyright © LLVM Project
-
+
diff --git a/packages/libclang/libclang.runtime.ubuntu.20.04-x64/libclang.runtime.ubuntu.20.04-x64.nuspec b/packages/libclang/libclang.runtime.ubuntu.20.04-x64/libclang.runtime.ubuntu.20.04-x64.nuspec
index 01a27106..54a4e942 100644
--- a/packages/libclang/libclang.runtime.ubuntu.20.04-x64/libclang.runtime.ubuntu.20.04-x64.nuspec
+++ b/packages/libclang/libclang.runtime.ubuntu.20.04-x64/libclang.runtime.ubuntu.20.04-x64.nuspec
@@ -2,7 +2,7 @@
libclang.runtime.ubuntu.20.04-x64
- 14.0.0
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
@@ -10,7 +10,7 @@
https://github.com/dotnet/clangsharp
ubuntu 20.04 x64 native library for libclang.
Copyright © LLVM Project
-
+
diff --git a/packages/libclang/libclang.runtime.ubuntu.21.10-x64/libclang.runtime.ubuntu.21.10-x64.nuspec b/packages/libclang/libclang.runtime.ubuntu.22.04-x64/libclang.runtime.ubuntu.22.04-x64.nuspec
similarity index 75%
rename from packages/libclang/libclang.runtime.ubuntu.21.10-x64/libclang.runtime.ubuntu.21.10-x64.nuspec
rename to packages/libclang/libclang.runtime.ubuntu.22.04-x64/libclang.runtime.ubuntu.22.04-x64.nuspec
index d82a90a0..d573b8ab 100644
--- a/packages/libclang/libclang.runtime.ubuntu.21.10-x64/libclang.runtime.ubuntu.21.10-x64.nuspec
+++ b/packages/libclang/libclang.runtime.ubuntu.22.04-x64/libclang.runtime.ubuntu.22.04-x64.nuspec
@@ -1,19 +1,19 @@
- libclang.runtime.ubuntu.21.10-x64
- 14.0.0
+ libclang.runtime.ubuntu.22.04-x64
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
Apache-2.0 WITH LLVM-exception
https://github.com/dotnet/clangsharp
- ubuntu 21.10 x64 native library for libclang.
+ ubuntu 22.04 x64 native library for libclang.
Copyright © LLVM Project
-
+
-
+
diff --git a/packages/libclang/libclang.runtime.win-arm64/libclang.runtime.win-arm64.nuspec b/packages/libclang/libclang.runtime.win-arm64/libclang.runtime.win-arm64.nuspec
index 6e9be542..5dce19c2 100644
--- a/packages/libclang/libclang.runtime.win-arm64/libclang.runtime.win-arm64.nuspec
+++ b/packages/libclang/libclang.runtime.win-arm64/libclang.runtime.win-arm64.nuspec
@@ -2,7 +2,7 @@
libclang.runtime.win-arm64
- 14.0.0
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
@@ -10,7 +10,7 @@
https://github.com/dotnet/clangsharp
win arm64 native library for libclang.
Copyright © LLVM Project
-
+
diff --git a/packages/libclang/libclang.runtime.win-x64/libclang.runtime.win-x64.nuspec b/packages/libclang/libclang.runtime.win-x64/libclang.runtime.win-x64.nuspec
index b92dd1c1..ab14e5e7 100644
--- a/packages/libclang/libclang.runtime.win-x64/libclang.runtime.win-x64.nuspec
+++ b/packages/libclang/libclang.runtime.win-x64/libclang.runtime.win-x64.nuspec
@@ -2,7 +2,7 @@
libclang.runtime.win-x64
- 14.0.0
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
@@ -10,7 +10,7 @@
https://github.com/dotnet/clangsharp
win x64 native library for libclang.
Copyright © LLVM Project
-
+
diff --git a/packages/libclang/libclang.runtime.win-x86/libclang.runtime.win-x86.nuspec b/packages/libclang/libclang.runtime.win-x86/libclang.runtime.win-x86.nuspec
index a980c73e..01690cf3 100644
--- a/packages/libclang/libclang.runtime.win-x86/libclang.runtime.win-x86.nuspec
+++ b/packages/libclang/libclang.runtime.win-x86/libclang.runtime.win-x86.nuspec
@@ -2,7 +2,7 @@
libclang.runtime.win-x86
- 14.0.0
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
@@ -10,7 +10,7 @@
https://github.com/dotnet/clangsharp
win x86 native library for libclang.
Copyright © LLVM Project
-
+
diff --git a/packages/libclang/libclang/LICENSE.TXT b/packages/libclang/libclang/LICENSE.TXT
index 24806ab4..57151765 100644
--- a/packages/libclang/libclang/LICENSE.TXT
+++ b/packages/libclang/libclang/LICENSE.TXT
@@ -239,7 +239,7 @@ Legacy LLVM License (https://llvm.org/docs/DeveloperPolicy.html#legacy):
University of Illinois/NCSA
Open Source License
-Copyright (c) 2007-2019 University of Illinois at Urbana-Champaign.
+Copyright (c) 2003-2019 University of Illinois at Urbana-Champaign.
All rights reserved.
Developed by:
diff --git a/packages/libclang/libclang/libclang.nuspec b/packages/libclang/libclang/libclang.nuspec
index 9b7c68b9..d43eb5e9 100644
--- a/packages/libclang/libclang/libclang.nuspec
+++ b/packages/libclang/libclang/libclang.nuspec
@@ -2,7 +2,7 @@
libclang
- 14.0.0
+ 15.0.0
.NET Foundation and Contributors
.NET Foundation and Contributors
true
@@ -10,11 +10,8 @@
https://github.com/dotnet/clangsharp
Multi-platform native library for libclang.
Copyright © LLVM Project
-
+
-
-
-
diff --git a/packages/libclang/libclang/runtime.json b/packages/libclang/libclang/runtime.json
index 68a6757b..dce538fb 100644
--- a/packages/libclang/libclang/runtime.json
+++ b/packages/libclang/libclang/runtime.json
@@ -2,52 +2,62 @@
"runtimes": {
"freebsd.12-x64": {
"libclang": {
- "libclang.runtime.freebsd.12-x64": "14.0.0"
+ "libclang.runtime.freebsd.12-x64": "15.0.0"
}
},
"freebsd.13-x64": {
"libclang": {
- "libclang.runtime.freebsd.13-x64": "14.0.0"
+ "libclang.runtime.freebsd.13-x64": "15.0.0"
}
},
"linux-arm64": {
"libclang": {
- "libclang.runtime.linux-arm64": "14.0.0"
+ "libclang.runtime.linux-arm64": "15.0.0"
+ }
+ },
+ "linux-x64": {
+ "libclang": {
+ "libclang.runtime.linux-x64": "15.0.0"
+ }
+ },
+ "osx-arm64": {
+ "libclang": {
+ "libclang.runtime.osx-arm64": "15.0.0"
}
},
"osx-x64": {
"libclang": {
- "libclang.runtime.osx-x64": "14.0.0"
+ "libclang.runtime.osx-x64": "15.0.0"
}
},
"ubuntu.18.04-x64": {
"libclang": {
- "libclang.runtime.ubuntu.18.04-x64": "14.0.0"
+ "libclang.runtime.ubuntu.18.04-x64": "15.0.0"
}
},
"ubuntu.20.04-x64": {
"libclang": {
- "libclang.runtime.ubuntu.20.04-x64": "14.0.0"
+ "libclang.runtime.ubuntu.20.04-x64": "15.0.0"
}
},
- "ubuntu.21.10-x64": {
+ "ubuntu.22.04-x64": {
"libclang": {
- "libclang.runtime.ubuntu.21.10-x64": "14.0.0"
+ "libclang.runtime.ubuntu.22.04-x64": "15.0.0"
}
},
"win-arm64": {
"libclang": {
- "libclang.runtime.win-arm64": "14.0.0"
+ "libclang.runtime.win-arm64": "15.0.0"
}
},
"win-x64": {
"libclang": {
- "libclang.runtime.win-x64": "14.0.0"
+ "libclang.runtime.win-x64": "15.0.0"
}
},
"win-x86": {
"libclang": {
- "libclang.runtime.win-x86": "14.0.0"
+ "libclang.runtime.win-x86": "15.0.0"
}
}
}
diff --git a/scripts/build.ps1 b/scripts/build.ps1
index 4c18851b..523c91b1 100644
--- a/scripts/build.ps1
+++ b/scripts/build.ps1
@@ -173,6 +173,7 @@ try {
Create-Directory -Path $DotNetInstallDirectory
& $DotNetInstallScript -Channel 6.0 -Version latest -InstallDir $DotNetInstallDirectory -Architecture $architecture
+ & $DotNetInstallScript -Channel 7.0 -Version latest -InstallDir $DotNetInstallDirectory -Architecture $architecture -Quality preview
$env:PATH="$DotNetInstallDirectory;$env:PATH"
}
diff --git a/scripts/build.sh b/scripts/build.sh
index cd3e9262..371a6792 100755
--- a/scripts/build.sh
+++ b/scripts/build.sh
@@ -205,6 +205,7 @@ if [[ ! -z "$architecture" ]]; then
CreateDirectory "$DotNetInstallDirectory"
. "$DotNetInstallScript" --channel 6.0 --version latest --install-dir "$DotNetInstallDirectory" --architecture "$architecture"
+ . "$DotNetInstallScript" --channel 7.0 --version latest --install-dir "$DotNetInstallDirectory" --architecture "$architecture" --quality preview
PATH="$DotNetInstallDirectory:$PATH:"
fi
diff --git a/sources/ClangSharp.Interop/CXAvailabilityKind.cs b/sources/ClangSharp.Interop/CXAvailabilityKind.cs
index 463b6d4a..f2c076af 100644
--- a/sources/ClangSharp.Interop/CXAvailabilityKind.cs
+++ b/sources/ClangSharp.Interop/CXAvailabilityKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXCallingConv.cs b/sources/ClangSharp.Interop/CXCallingConv.cs
index b6614aa4..3abf8e14 100644
--- a/sources/ClangSharp.Interop/CXCallingConv.cs
+++ b/sources/ClangSharp.Interop/CXCallingConv.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
@@ -26,6 +26,7 @@ public enum CXCallingConv
CXCallingConv_PreserveAll = 15,
CXCallingConv_AArch64VectorCall = 16,
CXCallingConv_SwiftAsync = 17,
+ CXCallingConv_AArch64SVEPCS = 18,
CXCallingConv_Invalid = 100,
CXCallingConv_Unexposed = 200,
}
diff --git a/sources/ClangSharp.Interop/CXChildVisitResult.cs b/sources/ClangSharp.Interop/CXChildVisitResult.cs
index 20405710..6b4a39d2 100644
--- a/sources/ClangSharp.Interop/CXChildVisitResult.cs
+++ b/sources/ClangSharp.Interop/CXChildVisitResult.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXCodeCompleteResults.cs b/sources/ClangSharp.Interop/CXCodeCompleteResults.cs
index ed1b5ad0..ad36429c 100644
--- a/sources/ClangSharp.Interop/CXCodeCompleteResults.cs
+++ b/sources/ClangSharp.Interop/CXCodeCompleteResults.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXCodeComplete_Flags.cs b/sources/ClangSharp.Interop/CXCodeComplete_Flags.cs
index b2186a94..33e37cb5 100644
--- a/sources/ClangSharp.Interop/CXCodeComplete_Flags.cs
+++ b/sources/ClangSharp.Interop/CXCodeComplete_Flags.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXComment.cs b/sources/ClangSharp.Interop/CXComment.cs
index a623e7ba..7db6e596 100644
--- a/sources/ClangSharp.Interop/CXComment.cs
+++ b/sources/ClangSharp.Interop/CXComment.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXCommentInlineCommandRenderKind.cs b/sources/ClangSharp.Interop/CXCommentInlineCommandRenderKind.cs
index de769b0c..9f9e8280 100644
--- a/sources/ClangSharp.Interop/CXCommentInlineCommandRenderKind.cs
+++ b/sources/ClangSharp.Interop/CXCommentInlineCommandRenderKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXCommentKind.cs b/sources/ClangSharp.Interop/CXCommentKind.cs
index 60909df0..f416866d 100644
--- a/sources/ClangSharp.Interop/CXCommentKind.cs
+++ b/sources/ClangSharp.Interop/CXCommentKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXCommentParamPassDirection.cs b/sources/ClangSharp.Interop/CXCommentParamPassDirection.cs
index 6a1e667c..38e15ded 100644
--- a/sources/ClangSharp.Interop/CXCommentParamPassDirection.cs
+++ b/sources/ClangSharp.Interop/CXCommentParamPassDirection.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXCompilationDatabase_Error.cs b/sources/ClangSharp.Interop/CXCompilationDatabase_Error.cs
index fe30ede2..4b3e1fc3 100644
--- a/sources/ClangSharp.Interop/CXCompilationDatabase_Error.cs
+++ b/sources/ClangSharp.Interop/CXCompilationDatabase_Error.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXCompletionChunkKind.cs b/sources/ClangSharp.Interop/CXCompletionChunkKind.cs
index 98bdaa9f..b7281b90 100644
--- a/sources/ClangSharp.Interop/CXCompletionChunkKind.cs
+++ b/sources/ClangSharp.Interop/CXCompletionChunkKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXCompletionContext.cs b/sources/ClangSharp.Interop/CXCompletionContext.cs
index 7fc5e4fa..ce038ce3 100644
--- a/sources/ClangSharp.Interop/CXCompletionContext.cs
+++ b/sources/ClangSharp.Interop/CXCompletionContext.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXCompletionResult.cs b/sources/ClangSharp.Interop/CXCompletionResult.cs
index 811dc9fe..43635e5e 100644
--- a/sources/ClangSharp.Interop/CXCompletionResult.cs
+++ b/sources/ClangSharp.Interop/CXCompletionResult.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXCursor.cs b/sources/ClangSharp.Interop/CXCursor.cs
index 51314399..a1d4dea9 100644
--- a/sources/ClangSharp.Interop/CXCursor.cs
+++ b/sources/ClangSharp.Interop/CXCursor.cs
@@ -1,8 +1,10 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
+using System.Runtime.CompilerServices;
+
namespace ClangSharp.Interop;
public partial struct CXCursor
@@ -23,6 +25,7 @@ public unsafe partial struct _data_e__FixedBuffer
public ref void* this[int index]
{
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
fixed (void** pThis = &e0)
diff --git a/sources/ClangSharp.Interop/CXCursorAndRangeVisitor.cs b/sources/ClangSharp.Interop/CXCursorAndRangeVisitor.cs
index 9dec40af..5980970a 100644
--- a/sources/ClangSharp.Interop/CXCursorAndRangeVisitor.cs
+++ b/sources/ClangSharp.Interop/CXCursorAndRangeVisitor.cs
@@ -1,10 +1,8 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
-using System;
-
namespace ClangSharp.Interop;
public unsafe partial struct CXCursorAndRangeVisitor
@@ -12,5 +10,5 @@ public unsafe partial struct CXCursorAndRangeVisitor
public void* context;
[NativeTypeName("enum CXVisitorResult (*)(void *, CXCursor, CXSourceRange)")]
- public IntPtr visit;
+ public delegate* unmanaged[Cdecl] visit;
}
diff --git a/sources/ClangSharp.Interop/CXCursorKind.cs b/sources/ClangSharp.Interop/CXCursorKind.cs
index 2f9c2004..9967cf4d 100644
--- a/sources/ClangSharp.Interop/CXCursorKind.cs
+++ b/sources/ClangSharp.Interop/CXCursorKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
@@ -121,7 +121,9 @@ public enum CXCursorKind
CXCursor_OMPArrayShapingExpr = 150,
CXCursor_OMPIteratorExpr = 151,
CXCursor_CXXAddrspaceCastExpr = 152,
- CXCursor_LastExpr = CXCursor_CXXAddrspaceCastExpr,
+ CXCursor_ConceptSpecializationExpr = 153,
+ CXCursor_RequiresExpr = 154,
+ CXCursor_LastExpr = CXCursor_RequiresExpr,
CXCursor_FirstStmt = 200,
CXCursor_UnexposedStmt = 200,
CXCursor_LabelStmt = 201,
@@ -220,8 +222,17 @@ public enum CXCursorKind
CXCursor_OMPUnrollDirective = 293,
CXCursor_OMPMetaDirective = 294,
CXCursor_OMPGenericLoopDirective = 295,
- CXCursor_LastStmt = CXCursor_OMPGenericLoopDirective,
- CXCursor_TranslationUnit = 300,
+ CXCursor_OMPTeamsGenericLoopDirective = 296,
+ CXCursor_OMPTargetTeamsGenericLoopDirective = 297,
+ CXCursor_OMPParallelGenericLoopDirective = 298,
+ CXCursor_OMPTargetParallelGenericLoopDirective = 299,
+ CXCursor_OMPParallelMaskedDirective = 300,
+ CXCursor_OMPMaskedTaskLoopDirective = 301,
+ CXCursor_OMPMaskedTaskLoopSimdDirective = 302,
+ CXCursor_OMPParallelMaskedTaskLoopDirective = 303,
+ CXCursor_OMPParallelMaskedTaskLoopSimdDirective = 304,
+ CXCursor_LastStmt = CXCursor_OMPParallelMaskedTaskLoopSimdDirective,
+ CXCursor_TranslationUnit = 350,
CXCursor_FirstAttr = 400,
CXCursor_UnexposedAttr = 400,
CXCursor_IBActionAttr = 401,
@@ -277,7 +288,8 @@ public enum CXCursorKind
CXCursor_TypeAliasTemplateDecl = 601,
CXCursor_StaticAssert = 602,
CXCursor_FriendDecl = 603,
+ CXCursor_ConceptDecl = 604,
CXCursor_FirstExtraDecl = CXCursor_ModuleImportDecl,
- CXCursor_LastExtraDecl = CXCursor_FriendDecl,
+ CXCursor_LastExtraDecl = CXCursor_ConceptDecl,
CXCursor_OverloadCandidate = 700,
}
diff --git a/sources/ClangSharp.Interop/CXCursor_ExceptionSpecificationKind.cs b/sources/ClangSharp.Interop/CXCursor_ExceptionSpecificationKind.cs
index a7684407..5eed6f8c 100644
--- a/sources/ClangSharp.Interop/CXCursor_ExceptionSpecificationKind.cs
+++ b/sources/ClangSharp.Interop/CXCursor_ExceptionSpecificationKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXDiagnosticDisplayOptions.cs b/sources/ClangSharp.Interop/CXDiagnosticDisplayOptions.cs
index d280514b..e5f13fb2 100644
--- a/sources/ClangSharp.Interop/CXDiagnosticDisplayOptions.cs
+++ b/sources/ClangSharp.Interop/CXDiagnosticDisplayOptions.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXDiagnosticSeverity.cs b/sources/ClangSharp.Interop/CXDiagnosticSeverity.cs
index 0635bd08..49a021aa 100644
--- a/sources/ClangSharp.Interop/CXDiagnosticSeverity.cs
+++ b/sources/ClangSharp.Interop/CXDiagnosticSeverity.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXErrorCode.cs b/sources/ClangSharp.Interop/CXErrorCode.cs
index c1545866..3ff4d5c0 100644
--- a/sources/ClangSharp.Interop/CXErrorCode.cs
+++ b/sources/ClangSharp.Interop/CXErrorCode.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXEvalResultKind.cs b/sources/ClangSharp.Interop/CXEvalResultKind.cs
index a873fcd1..5ec32ab4 100644
--- a/sources/ClangSharp.Interop/CXEvalResultKind.cs
+++ b/sources/ClangSharp.Interop/CXEvalResultKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXFileUniqueID.cs b/sources/ClangSharp.Interop/CXFileUniqueID.cs
index f75e074b..497c1b0c 100644
--- a/sources/ClangSharp.Interop/CXFileUniqueID.cs
+++ b/sources/ClangSharp.Interop/CXFileUniqueID.cs
@@ -1,12 +1,12 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
public unsafe partial struct CXFileUniqueID
{
- [NativeTypeName("unsigned long long [3]")]
+ [NativeTypeName("unsigned long long[3]")]
public fixed ulong data[3];
}
diff --git a/sources/ClangSharp.Interop/CXGlobalOptFlags.cs b/sources/ClangSharp.Interop/CXGlobalOptFlags.cs
index 4d663842..979288ca 100644
--- a/sources/ClangSharp.Interop/CXGlobalOptFlags.cs
+++ b/sources/ClangSharp.Interop/CXGlobalOptFlags.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxAttrInfo.cs b/sources/ClangSharp.Interop/CXIdxAttrInfo.cs
index 03522a0a..dc2087cd 100644
--- a/sources/ClangSharp.Interop/CXIdxAttrInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxAttrInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxAttrKind.cs b/sources/ClangSharp.Interop/CXIdxAttrKind.cs
index b65c1fe2..6b60b5af 100644
--- a/sources/ClangSharp.Interop/CXIdxAttrKind.cs
+++ b/sources/ClangSharp.Interop/CXIdxAttrKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxBaseClassInfo.cs b/sources/ClangSharp.Interop/CXIdxBaseClassInfo.cs
index ed98fdd8..bade6a6e 100644
--- a/sources/ClangSharp.Interop/CXIdxBaseClassInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxBaseClassInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxCXXClassDeclInfo.cs b/sources/ClangSharp.Interop/CXIdxCXXClassDeclInfo.cs
index 745d41b6..cc01747d 100644
--- a/sources/ClangSharp.Interop/CXIdxCXXClassDeclInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxCXXClassDeclInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxContainerInfo.cs b/sources/ClangSharp.Interop/CXIdxContainerInfo.cs
index 968a453c..675166ee 100644
--- a/sources/ClangSharp.Interop/CXIdxContainerInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxContainerInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxDeclInfo.cs b/sources/ClangSharp.Interop/CXIdxDeclInfo.cs
index cf4c7ab8..4c64f560 100644
--- a/sources/ClangSharp.Interop/CXIdxDeclInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxDeclInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxDeclInfoFlags.cs b/sources/ClangSharp.Interop/CXIdxDeclInfoFlags.cs
index ece114b7..fc740c13 100644
--- a/sources/ClangSharp.Interop/CXIdxDeclInfoFlags.cs
+++ b/sources/ClangSharp.Interop/CXIdxDeclInfoFlags.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxEntityCXXTemplateKind.cs b/sources/ClangSharp.Interop/CXIdxEntityCXXTemplateKind.cs
index 8e889d8e..d39130a9 100644
--- a/sources/ClangSharp.Interop/CXIdxEntityCXXTemplateKind.cs
+++ b/sources/ClangSharp.Interop/CXIdxEntityCXXTemplateKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxEntityInfo.cs b/sources/ClangSharp.Interop/CXIdxEntityInfo.cs
index d34cd877..e52978b0 100644
--- a/sources/ClangSharp.Interop/CXIdxEntityInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxEntityInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxEntityKind.cs b/sources/ClangSharp.Interop/CXIdxEntityKind.cs
index e4b58e2f..2668ec51 100644
--- a/sources/ClangSharp.Interop/CXIdxEntityKind.cs
+++ b/sources/ClangSharp.Interop/CXIdxEntityKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
@@ -34,4 +34,5 @@ public enum CXIdxEntityKind
CXIdxEntity_CXXConversionFunction = 24,
CXIdxEntity_CXXTypeAlias = 25,
CXIdxEntity_CXXInterface = 26,
+ CXIdxEntity_CXXConcept = 27,
}
diff --git a/sources/ClangSharp.Interop/CXIdxEntityLanguage.cs b/sources/ClangSharp.Interop/CXIdxEntityLanguage.cs
index 6cf0251d..d99e56a9 100644
--- a/sources/ClangSharp.Interop/CXIdxEntityLanguage.cs
+++ b/sources/ClangSharp.Interop/CXIdxEntityLanguage.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxEntityRefInfo.cs b/sources/ClangSharp.Interop/CXIdxEntityRefInfo.cs
index 53324e06..2dce640a 100644
--- a/sources/ClangSharp.Interop/CXIdxEntityRefInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxEntityRefInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxEntityRefKind.cs b/sources/ClangSharp.Interop/CXIdxEntityRefKind.cs
index 521757e6..73296e79 100644
--- a/sources/ClangSharp.Interop/CXIdxEntityRefKind.cs
+++ b/sources/ClangSharp.Interop/CXIdxEntityRefKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxIBOutletCollectionAttrInfo.cs b/sources/ClangSharp.Interop/CXIdxIBOutletCollectionAttrInfo.cs
index cd07a065..29c933e4 100644
--- a/sources/ClangSharp.Interop/CXIdxIBOutletCollectionAttrInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxIBOutletCollectionAttrInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxImportedASTFileInfo.cs b/sources/ClangSharp.Interop/CXIdxImportedASTFileInfo.cs
index 2c5f5cfa..3aa59ca0 100644
--- a/sources/ClangSharp.Interop/CXIdxImportedASTFileInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxImportedASTFileInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxIncludedFileInfo.cs b/sources/ClangSharp.Interop/CXIdxIncludedFileInfo.cs
index c5c1beb3..26f8fe78 100644
--- a/sources/ClangSharp.Interop/CXIdxIncludedFileInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxIncludedFileInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxLoc.cs b/sources/ClangSharp.Interop/CXIdxLoc.cs
index 56329496..c07b01b0 100644
--- a/sources/ClangSharp.Interop/CXIdxLoc.cs
+++ b/sources/ClangSharp.Interop/CXIdxLoc.cs
@@ -1,8 +1,10 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
+using System.Runtime.CompilerServices;
+
namespace ClangSharp.Interop;
public partial struct CXIdxLoc
@@ -20,6 +22,7 @@ public unsafe partial struct _ptr_data_e__FixedBuffer
public ref void* this[int index]
{
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
fixed (void** pThis = &e0)
diff --git a/sources/ClangSharp.Interop/CXIdxObjCCategoryDeclInfo.cs b/sources/ClangSharp.Interop/CXIdxObjCCategoryDeclInfo.cs
index 387c14e7..9159a957 100644
--- a/sources/ClangSharp.Interop/CXIdxObjCCategoryDeclInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxObjCCategoryDeclInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxObjCContainerDeclInfo.cs b/sources/ClangSharp.Interop/CXIdxObjCContainerDeclInfo.cs
index ecf97ea2..4d0058c1 100644
--- a/sources/ClangSharp.Interop/CXIdxObjCContainerDeclInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxObjCContainerDeclInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxObjCContainerKind.cs b/sources/ClangSharp.Interop/CXIdxObjCContainerKind.cs
index 0082e8bc..0b18a9f0 100644
--- a/sources/ClangSharp.Interop/CXIdxObjCContainerKind.cs
+++ b/sources/ClangSharp.Interop/CXIdxObjCContainerKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxObjCInterfaceDeclInfo.cs b/sources/ClangSharp.Interop/CXIdxObjCInterfaceDeclInfo.cs
index 25629cb6..7a3be461 100644
--- a/sources/ClangSharp.Interop/CXIdxObjCInterfaceDeclInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxObjCInterfaceDeclInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxObjCPropertyDeclInfo.cs b/sources/ClangSharp.Interop/CXIdxObjCPropertyDeclInfo.cs
index b8af313e..c6537367 100644
--- a/sources/ClangSharp.Interop/CXIdxObjCPropertyDeclInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxObjCPropertyDeclInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxObjCProtocolRefInfo.cs b/sources/ClangSharp.Interop/CXIdxObjCProtocolRefInfo.cs
index 18c7ab38..9c915238 100644
--- a/sources/ClangSharp.Interop/CXIdxObjCProtocolRefInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxObjCProtocolRefInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIdxObjCProtocolRefListInfo.cs b/sources/ClangSharp.Interop/CXIdxObjCProtocolRefListInfo.cs
index dba5e216..0e6ee88c 100644
--- a/sources/ClangSharp.Interop/CXIdxObjCProtocolRefListInfo.cs
+++ b/sources/ClangSharp.Interop/CXIdxObjCProtocolRefListInfo.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXIndexOptFlags.cs b/sources/ClangSharp.Interop/CXIndexOptFlags.cs
index 3268b222..6b2372bc 100644
--- a/sources/ClangSharp.Interop/CXIndexOptFlags.cs
+++ b/sources/ClangSharp.Interop/CXIndexOptFlags.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXLanguageKind.cs b/sources/ClangSharp.Interop/CXLanguageKind.cs
index 4cf8e6ff..311b8d46 100644
--- a/sources/ClangSharp.Interop/CXLanguageKind.cs
+++ b/sources/ClangSharp.Interop/CXLanguageKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXLinkageKind.cs b/sources/ClangSharp.Interop/CXLinkageKind.cs
index c8ed7fed..19582bdf 100644
--- a/sources/ClangSharp.Interop/CXLinkageKind.cs
+++ b/sources/ClangSharp.Interop/CXLinkageKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXLoadDiag_Error.cs b/sources/ClangSharp.Interop/CXLoadDiag_Error.cs
index a0a8a3f6..f34dc015 100644
--- a/sources/ClangSharp.Interop/CXLoadDiag_Error.cs
+++ b/sources/ClangSharp.Interop/CXLoadDiag_Error.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXNameRefFlags.cs b/sources/ClangSharp.Interop/CXNameRefFlags.cs
index 11440965..0854aab4 100644
--- a/sources/ClangSharp.Interop/CXNameRefFlags.cs
+++ b/sources/ClangSharp.Interop/CXNameRefFlags.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXObjCDeclQualifierKind.cs b/sources/ClangSharp.Interop/CXObjCDeclQualifierKind.cs
index 820c6c7c..7b7f0814 100644
--- a/sources/ClangSharp.Interop/CXObjCDeclQualifierKind.cs
+++ b/sources/ClangSharp.Interop/CXObjCDeclQualifierKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXObjCPropertyAttrKind.cs b/sources/ClangSharp.Interop/CXObjCPropertyAttrKind.cs
index 526615de..b9584a7a 100644
--- a/sources/ClangSharp.Interop/CXObjCPropertyAttrKind.cs
+++ b/sources/ClangSharp.Interop/CXObjCPropertyAttrKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXPlatformAvailability.cs b/sources/ClangSharp.Interop/CXPlatformAvailability.cs
index f248b9e2..3520ca16 100644
--- a/sources/ClangSharp.Interop/CXPlatformAvailability.cs
+++ b/sources/ClangSharp.Interop/CXPlatformAvailability.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXPrintingPolicyProperty.cs b/sources/ClangSharp.Interop/CXPrintingPolicyProperty.cs
index ea24c50e..4397b8c3 100644
--- a/sources/ClangSharp.Interop/CXPrintingPolicyProperty.cs
+++ b/sources/ClangSharp.Interop/CXPrintingPolicyProperty.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXRefQualifierKind.cs b/sources/ClangSharp.Interop/CXRefQualifierKind.cs
index a076b1b5..b10c27b5 100644
--- a/sources/ClangSharp.Interop/CXRefQualifierKind.cs
+++ b/sources/ClangSharp.Interop/CXRefQualifierKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXReparse_Flags.cs b/sources/ClangSharp.Interop/CXReparse_Flags.cs
index 4dfa3a01..822c3321 100644
--- a/sources/ClangSharp.Interop/CXReparse_Flags.cs
+++ b/sources/ClangSharp.Interop/CXReparse_Flags.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXResult.cs b/sources/ClangSharp.Interop/CXResult.cs
index 80c7c445..55ef6b65 100644
--- a/sources/ClangSharp.Interop/CXResult.cs
+++ b/sources/ClangSharp.Interop/CXResult.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXSaveError.cs b/sources/ClangSharp.Interop/CXSaveError.cs
index d22f73f9..e7881ffb 100644
--- a/sources/ClangSharp.Interop/CXSaveError.cs
+++ b/sources/ClangSharp.Interop/CXSaveError.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXSaveTranslationUnit_Flags.cs b/sources/ClangSharp.Interop/CXSaveTranslationUnit_Flags.cs
index 5c35b3ef..ee1f1972 100644
--- a/sources/ClangSharp.Interop/CXSaveTranslationUnit_Flags.cs
+++ b/sources/ClangSharp.Interop/CXSaveTranslationUnit_Flags.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXSourceLocation.cs b/sources/ClangSharp.Interop/CXSourceLocation.cs
index ba6dcd9b..054c5a6a 100644
--- a/sources/ClangSharp.Interop/CXSourceLocation.cs
+++ b/sources/ClangSharp.Interop/CXSourceLocation.cs
@@ -1,8 +1,10 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
+using System.Runtime.CompilerServices;
+
namespace ClangSharp.Interop;
public partial struct CXSourceLocation
@@ -20,6 +22,7 @@ public unsafe partial struct _ptr_data_e__FixedBuffer
public ref void* this[int index]
{
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
fixed (void** pThis = &e0)
diff --git a/sources/ClangSharp.Interop/CXSourceRange.cs b/sources/ClangSharp.Interop/CXSourceRange.cs
index 28e69953..87eea6eb 100644
--- a/sources/ClangSharp.Interop/CXSourceRange.cs
+++ b/sources/ClangSharp.Interop/CXSourceRange.cs
@@ -1,8 +1,10 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
+using System.Runtime.CompilerServices;
+
namespace ClangSharp.Interop;
public partial struct CXSourceRange
@@ -23,6 +25,7 @@ public unsafe partial struct _ptr_data_e__FixedBuffer
public ref void* this[int index]
{
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
fixed (void** pThis = &e0)
diff --git a/sources/ClangSharp.Interop/CXSourceRangeList.cs b/sources/ClangSharp.Interop/CXSourceRangeList.cs
index 4babdf7e..15d4343d 100644
--- a/sources/ClangSharp.Interop/CXSourceRangeList.cs
+++ b/sources/ClangSharp.Interop/CXSourceRangeList.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXString.cs b/sources/ClangSharp.Interop/CXString.cs
index b5769f22..7dadd22a 100644
--- a/sources/ClangSharp.Interop/CXString.cs
+++ b/sources/ClangSharp.Interop/CXString.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXStringSet.cs b/sources/ClangSharp.Interop/CXStringSet.cs
index 81758c0c..201b4ef2 100644
--- a/sources/ClangSharp.Interop/CXStringSet.cs
+++ b/sources/ClangSharp.Interop/CXStringSet.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXSymbolRole.cs b/sources/ClangSharp.Interop/CXSymbolRole.cs
index 24b4bd3c..89c6f06b 100644
--- a/sources/ClangSharp.Interop/CXSymbolRole.cs
+++ b/sources/ClangSharp.Interop/CXSymbolRole.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXTLSKind.cs b/sources/ClangSharp.Interop/CXTLSKind.cs
index cc062b3a..c0dad2f2 100644
--- a/sources/ClangSharp.Interop/CXTLSKind.cs
+++ b/sources/ClangSharp.Interop/CXTLSKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXTUResourceUsage.cs b/sources/ClangSharp.Interop/CXTUResourceUsage.cs
index c685a465..e5571f15 100644
--- a/sources/ClangSharp.Interop/CXTUResourceUsage.cs
+++ b/sources/ClangSharp.Interop/CXTUResourceUsage.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXTUResourceUsageEntry.cs b/sources/ClangSharp.Interop/CXTUResourceUsageEntry.cs
index ddf5bb93..6b70a3db 100644
--- a/sources/ClangSharp.Interop/CXTUResourceUsageEntry.cs
+++ b/sources/ClangSharp.Interop/CXTUResourceUsageEntry.cs
@@ -1,10 +1,8 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
-using System;
-
namespace ClangSharp.Interop;
public partial struct CXTUResourceUsageEntry
@@ -13,5 +11,5 @@ public partial struct CXTUResourceUsageEntry
public CXTUResourceUsageKind kind;
[NativeTypeName("unsigned long")]
- public UIntPtr amount;
+ public nuint amount;
}
diff --git a/sources/ClangSharp.Interop/CXTUResourceUsageKind.cs b/sources/ClangSharp.Interop/CXTUResourceUsageKind.cs
index 5ad0a586..9ed0f335 100644
--- a/sources/ClangSharp.Interop/CXTUResourceUsageKind.cs
+++ b/sources/ClangSharp.Interop/CXTUResourceUsageKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXTemplateArgumentKind.cs b/sources/ClangSharp.Interop/CXTemplateArgumentKind.cs
index f7ce4797..30cca59d 100644
--- a/sources/ClangSharp.Interop/CXTemplateArgumentKind.cs
+++ b/sources/ClangSharp.Interop/CXTemplateArgumentKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXToken.cs b/sources/ClangSharp.Interop/CXToken.cs
index 591a125d..000fd739 100644
--- a/sources/ClangSharp.Interop/CXToken.cs
+++ b/sources/ClangSharp.Interop/CXToken.cs
@@ -1,13 +1,13 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
public unsafe partial struct CXToken
{
- [NativeTypeName("unsigned int [4]")]
+ [NativeTypeName("unsigned int[4]")]
public fixed uint int_data[4];
public void* ptr_data;
diff --git a/sources/ClangSharp.Interop/CXTokenKind.cs b/sources/ClangSharp.Interop/CXTokenKind.cs
index 1b91361c..ab4610e1 100644
--- a/sources/ClangSharp.Interop/CXTokenKind.cs
+++ b/sources/ClangSharp.Interop/CXTokenKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXTranslationUnit_Flags.cs b/sources/ClangSharp.Interop/CXTranslationUnit_Flags.cs
index 3d9f2561..76b81270 100644
--- a/sources/ClangSharp.Interop/CXTranslationUnit_Flags.cs
+++ b/sources/ClangSharp.Interop/CXTranslationUnit_Flags.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXType.cs b/sources/ClangSharp.Interop/CXType.cs
index 4b19a645..072fbb49 100644
--- a/sources/ClangSharp.Interop/CXType.cs
+++ b/sources/ClangSharp.Interop/CXType.cs
@@ -1,8 +1,10 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
+using System.Runtime.CompilerServices;
+
namespace ClangSharp.Interop;
public partial struct CXType
@@ -20,6 +22,7 @@ public unsafe partial struct _data_e__FixedBuffer
public ref void* this[int index]
{
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
fixed (void** pThis = &e0)
diff --git a/sources/ClangSharp.Interop/CXTypeKind.cs b/sources/ClangSharp.Interop/CXTypeKind.cs
index 6b661e57..1d8585f6 100644
--- a/sources/ClangSharp.Interop/CXTypeKind.cs
+++ b/sources/ClangSharp.Interop/CXTypeKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
@@ -128,4 +128,5 @@ public enum CXTypeKind
CXType_OCLIntelSubgroupAVCImeDualRefStreamin = 175,
CXType_ExtVector = 176,
CXType_Atomic = 177,
+ CXType_BTFTagAttributed = 178,
}
diff --git a/sources/ClangSharp.Interop/CXTypeLayoutError.cs b/sources/ClangSharp.Interop/CXTypeLayoutError.cs
index 1d301ac7..9b8a1b22 100644
--- a/sources/ClangSharp.Interop/CXTypeLayoutError.cs
+++ b/sources/ClangSharp.Interop/CXTypeLayoutError.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXTypeNullabilityKind.cs b/sources/ClangSharp.Interop/CXTypeNullabilityKind.cs
index 42800797..e364c7a9 100644
--- a/sources/ClangSharp.Interop/CXTypeNullabilityKind.cs
+++ b/sources/ClangSharp.Interop/CXTypeNullabilityKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXUnsavedFile.cs b/sources/ClangSharp.Interop/CXUnsavedFile.cs
index 2c889ce3..a2b64f0c 100644
--- a/sources/ClangSharp.Interop/CXUnsavedFile.cs
+++ b/sources/ClangSharp.Interop/CXUnsavedFile.cs
@@ -1,10 +1,8 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
-using System;
-
namespace ClangSharp.Interop;
public unsafe partial struct CXUnsavedFile
@@ -16,5 +14,5 @@ public unsafe partial struct CXUnsavedFile
public sbyte* Contents;
[NativeTypeName("unsigned long")]
- public UIntPtr Length;
+ public nuint Length;
}
diff --git a/sources/ClangSharp.Interop/CXVersion.cs b/sources/ClangSharp.Interop/CXVersion.cs
index d291b6a1..0504d0f1 100644
--- a/sources/ClangSharp.Interop/CXVersion.cs
+++ b/sources/ClangSharp.Interop/CXVersion.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXVisibilityKind.cs b/sources/ClangSharp.Interop/CXVisibilityKind.cs
index 8da6a109..c3c63bb8 100644
--- a/sources/ClangSharp.Interop/CXVisibilityKind.cs
+++ b/sources/ClangSharp.Interop/CXVisibilityKind.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXVisitorResult.cs b/sources/ClangSharp.Interop/CXVisitorResult.cs
index 2323460f..4161c409 100644
--- a/sources/ClangSharp.Interop/CXVisitorResult.cs
+++ b/sources/ClangSharp.Interop/CXVisitorResult.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CX_AttrKind.cs b/sources/ClangSharp.Interop/CX_AttrKind.cs
index b56644ad..ebbee323 100644
--- a/sources/ClangSharp.Interop/CX_AttrKind.cs
+++ b/sources/ClangSharp.Interop/CX_AttrKind.cs
@@ -7,6 +7,7 @@ public enum CX_AttrKind
{
CX_AttrKind_Invalid,
CX_AttrKind_AddressSpace,
+ CX_AttrKind_AnnotateType,
CX_AttrKind_ArmMveStrictPolymorphism,
CX_AttrKind_BTFTypeTag,
CX_AttrKind_CmseNSCall,
@@ -35,8 +36,12 @@ public enum CX_AttrKind
CX_AttrKind_OpenCLUnrollHint,
CX_AttrKind_Suppress,
CX_AttrKind_Unlikely,
+ CX_AttrKind_AlwaysInline,
+ CX_AttrKind_NoInline,
CX_AttrKind_NoMerge,
+ CX_AttrKind_AArch64SVEPcs,
CX_AttrKind_AArch64VectorPcs,
+ CX_AttrKind_AMDGPUKernelCall,
CX_AttrKind_AcquireHandle,
CX_AttrKind_AnyX86NoCfCheck,
CX_AttrKind_CDecl,
@@ -86,7 +91,6 @@ public enum CX_AttrKind
CX_AttrKind_AllocAlign,
CX_AttrKind_AllocSize,
CX_AttrKind_AlwaysDestroy,
- CX_AttrKind_AlwaysInline,
CX_AttrKind_AnalyzerNoReturn,
CX_AttrKind_AnyX86Interrupt,
CX_AttrKind_AnyX86NoCallerSavedRegisters,
@@ -164,10 +168,14 @@ public enum CX_AttrKind
CX_AttrKind_Flatten,
CX_AttrKind_Format,
CX_AttrKind_FormatArg,
+ CX_AttrKind_FunctionReturnThunks,
CX_AttrKind_GNUInline,
CX_AttrKind_GuardedBy,
CX_AttrKind_GuardedVar,
CX_AttrKind_HIPManaged,
+ CX_AttrKind_HLSLNumThreads,
+ CX_AttrKind_HLSLSV_GroupIndex,
+ CX_AttrKind_HLSLShader,
CX_AttrKind_Hot,
CX_AttrKind_IBAction,
CX_AttrKind_IBOutlet,
@@ -206,11 +214,11 @@ public enum CX_AttrKind
CX_AttrKind_NoDebug,
CX_AttrKind_NoDestroy,
CX_AttrKind_NoDuplicate,
- CX_AttrKind_NoInline,
CX_AttrKind_NoInstrumentFunction,
CX_AttrKind_NoMicroMips,
CX_AttrKind_NoMips16,
CX_AttrKind_NoProfileFunction,
+ CX_AttrKind_NoRandomizeLayout,
CX_AttrKind_NoReturn,
CX_AttrKind_NoSanitize,
CX_AttrKind_NoSpeculativeLoadHardening,
@@ -265,6 +273,7 @@ public enum CX_AttrKind
CX_AttrKind_PtGuardedVar,
CX_AttrKind_Pure,
CX_AttrKind_RISCVInterrupt,
+ CX_AttrKind_RandomizeLayout,
CX_AttrKind_Reinitializes,
CX_AttrKind_ReleaseCapability,
CX_AttrKind_ReqdWorkGroupSize,
@@ -325,6 +334,7 @@ public enum CX_AttrKind
CX_AttrKind_X86ForceAlignArgPointer,
CX_AttrKind_XRayInstrument,
CX_AttrKind_XRayLogArgs,
+ CX_AttrKind_ZeroCallUsedRegs,
CX_AttrKind_AbiTag,
CX_AttrKind_Alias,
CX_AttrKind_AlignValue,
@@ -360,11 +370,11 @@ public enum CX_AttrKind
CX_AttrKind_LastTypeAttr = CX_AttrKind_UPtr,
CX_AttrKind_FirstStmtAttr = CX_AttrKind_FallThrough,
CX_AttrKind_LastStmtAttr = CX_AttrKind_Unlikely,
- CX_AttrKind_FirstDeclOrStmtAttr = CX_AttrKind_NoMerge,
+ CX_AttrKind_FirstDeclOrStmtAttr = CX_AttrKind_AlwaysInline,
CX_AttrKind_LastDeclOrStmtAttr = CX_AttrKind_NoMerge,
- CX_AttrKind_FirstInheritableAttr = CX_AttrKind_NoMerge,
- CX_AttrKind_LastInheritableAttr = CX_AttrKind_XRayLogArgs,
- CX_AttrKind_FirstDeclOrTypeAttr = CX_AttrKind_AArch64VectorPcs,
+ CX_AttrKind_FirstInheritableAttr = CX_AttrKind_AlwaysInline,
+ CX_AttrKind_LastInheritableAttr = CX_AttrKind_ZeroCallUsedRegs,
+ CX_AttrKind_FirstDeclOrTypeAttr = CX_AttrKind_AArch64SVEPcs,
CX_AttrKind_LastDeclOrTypeAttr = CX_AttrKind_VectorCall,
CX_AttrKind_FirstInheritableParamAttr = CX_AttrKind_SwiftAsyncContext,
CX_AttrKind_LastInheritableParamAttr = CX_AttrKind_UseHandle,
diff --git a/sources/ClangSharp.Interop/CX_CXXAccessSpecifier.cs b/sources/ClangSharp.Interop/CX_CXXAccessSpecifier.cs
index 745d6281..3aedf1d4 100644
--- a/sources/ClangSharp.Interop/CX_CXXAccessSpecifier.cs
+++ b/sources/ClangSharp.Interop/CX_CXXAccessSpecifier.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CX_ConstructionKind.cs b/sources/ClangSharp.Interop/CX_ConstructionKind.cs
index 0e42bf67..440489ae 100644
--- a/sources/ClangSharp.Interop/CX_ConstructionKind.cs
+++ b/sources/ClangSharp.Interop/CX_ConstructionKind.cs
@@ -9,5 +9,5 @@ public enum CX_ConstructionKind
CX_CK_Complete,
CX_CK_NonVirtualBase,
CX_CK_VirtualBase,
- CX_CK_Delegating
+ CX_CK_Delegating,
}
diff --git a/sources/ClangSharp.Interop/CX_DeclKind.cs b/sources/ClangSharp.Interop/CX_DeclKind.cs
index cdb81287..72ea6229 100644
--- a/sources/ClangSharp.Interop/CX_DeclKind.cs
+++ b/sources/ClangSharp.Interop/CX_DeclKind.cs
@@ -115,6 +115,7 @@ public enum CX_DeclKind
CX_DeclKind_OMPDeclareMapper,
CX_DeclKind_OMPDeclareReduction,
CX_DeclKind_TemplateParamObject,
+ CX_DeclKind_UnnamedGlobalConstant,
CX_DeclKind_UnresolvedUsingValue,
CX_DeclKind_FirstValue = CX_DeclKind_Binding,
CX_DeclKind_LastValue = CX_DeclKind_UnresolvedUsingValue,
diff --git a/sources/ClangSharp.Interop/CX_DestructorType.cs b/sources/ClangSharp.Interop/CX_DestructorType.cs
index ef974db1..5c0a6c85 100644
--- a/sources/ClangSharp.Interop/CX_DestructorType.cs
+++ b/sources/ClangSharp.Interop/CX_DestructorType.cs
@@ -8,5 +8,5 @@ public enum CX_DestructorType
Deleting,
Complete,
Base,
- Comdat
+ Comdat,
}
diff --git a/sources/ClangSharp.Interop/CX_StmtClass.cs b/sources/ClangSharp.Interop/CX_StmtClass.cs
index 83efbad0..b33741c2 100644
--- a/sources/ClangSharp.Interop/CX_StmtClass.cs
+++ b/sources/ClangSharp.Interop/CX_StmtClass.cs
@@ -44,27 +44,35 @@ public enum CX_StmtClass
CX_StmtClass_OMPForDirective,
CX_StmtClass_OMPForSimdDirective,
CX_StmtClass_OMPGenericLoopDirective,
+ CX_StmtClass_OMPMaskedTaskLoopDirective,
+ CX_StmtClass_OMPMaskedTaskLoopSimdDirective,
CX_StmtClass_OMPMasterTaskLoopDirective,
CX_StmtClass_OMPMasterTaskLoopSimdDirective,
CX_StmtClass_OMPParallelForDirective,
CX_StmtClass_OMPParallelForSimdDirective,
+ CX_StmtClass_OMPParallelGenericLoopDirective,
+ CX_StmtClass_OMPParallelMaskedTaskLoopDirective,
+ CX_StmtClass_OMPParallelMaskedTaskLoopSimdDirective,
CX_StmtClass_OMPParallelMasterTaskLoopDirective,
CX_StmtClass_OMPParallelMasterTaskLoopSimdDirective,
CX_StmtClass_OMPSimdDirective,
CX_StmtClass_OMPTargetParallelForSimdDirective,
+ CX_StmtClass_OMPTargetParallelGenericLoopDirective,
CX_StmtClass_OMPTargetSimdDirective,
CX_StmtClass_OMPTargetTeamsDistributeDirective,
CX_StmtClass_OMPTargetTeamsDistributeParallelForDirective,
CX_StmtClass_OMPTargetTeamsDistributeParallelForSimdDirective,
CX_StmtClass_OMPTargetTeamsDistributeSimdDirective,
+ CX_StmtClass_OMPTargetTeamsGenericLoopDirective,
CX_StmtClass_OMPTaskLoopDirective,
CX_StmtClass_OMPTaskLoopSimdDirective,
CX_StmtClass_OMPTeamsDistributeDirective,
CX_StmtClass_OMPTeamsDistributeParallelForDirective,
CX_StmtClass_OMPTeamsDistributeParallelForSimdDirective,
CX_StmtClass_OMPTeamsDistributeSimdDirective,
+ CX_StmtClass_OMPTeamsGenericLoopDirective,
CX_StmtClass_FirstOMPLoopDirective = CX_StmtClass_OMPDistributeDirective,
- CX_StmtClass_LastOMPLoopDirective = CX_StmtClass_OMPTeamsDistributeSimdDirective,
+ CX_StmtClass_LastOMPLoopDirective = CX_StmtClass_OMPTeamsGenericLoopDirective,
CX_StmtClass_OMPTileDirective,
CX_StmtClass_OMPUnrollDirective,
CX_StmtClass_FirstOMPLoopTransformationDirective = CX_StmtClass_OMPTileDirective,
@@ -76,6 +84,7 @@ public enum CX_StmtClass
CX_StmtClass_OMPMetaDirective,
CX_StmtClass_OMPOrderedDirective,
CX_StmtClass_OMPParallelDirective,
+ CX_StmtClass_OMPParallelMaskedDirective,
CX_StmtClass_OMPParallelMasterDirective,
CX_StmtClass_OMPParallelSectionsDirective,
CX_StmtClass_OMPScanDirective,
diff --git a/sources/ClangSharp.Interop/CX_StorageClass.cs b/sources/ClangSharp.Interop/CX_StorageClass.cs
index 1dd780e1..72faac70 100644
--- a/sources/ClangSharp.Interop/CX_StorageClass.cs
+++ b/sources/ClangSharp.Interop/CX_StorageClass.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CX_TemplateNameKind.cs b/sources/ClangSharp.Interop/CX_TemplateNameKind.cs
index d72a5abc..5c44aa3a 100644
--- a/sources/ClangSharp.Interop/CX_TemplateNameKind.cs
+++ b/sources/ClangSharp.Interop/CX_TemplateNameKind.cs
@@ -6,11 +6,11 @@ namespace ClangSharp.Interop;
public enum CX_TemplateNameKind
{
CX_TNK_Invalid,
- CX_TNK_Template = 1,
- CX_TNK_OverloadedTemplate = 2,
- CX_TNK_AssumedTemplate = 3,
- CX_TNK_QualifiedTemplate = 4,
- CX_TNK_DependentTemplate = 5,
- CX_TNK_SubstTemplateTemplateParm = 6,
- CX_TNK_SubstTemplateTemplateParmPack = 7
+ CX_TNK_Template,
+ CX_TNK_OverloadedTemplate,
+ CX_TNK_AssumedTemplate,
+ CX_TNK_QualifiedTemplate,
+ CX_TNK_DependentTemplate,
+ CX_TNK_SubstTemplateTemplateParm,
+ CX_TNK_SubstTemplateTemplateParmPack,
}
diff --git a/sources/ClangSharp.Interop/CX_TypeClass.cs b/sources/ClangSharp.Interop/CX_TypeClass.cs
index 0710d558..f6a7e4c7 100644
--- a/sources/ClangSharp.Interop/CX_TypeClass.cs
+++ b/sources/ClangSharp.Interop/CX_TypeClass.cs
@@ -14,6 +14,7 @@ public enum CX_TypeClass
CX_TypeClass_VariableArray,
CX_TypeClass_Atomic,
CX_TypeClass_Attributed,
+ CX_TypeClass_BTFTagAttributed,
CX_TypeClass_BitInt,
CX_TypeClass_BlockPointer,
CX_TypeClass_Builtin,
diff --git a/sources/ClangSharp.Interop/CX_VariableCaptureKind.cs b/sources/ClangSharp.Interop/CX_VariableCaptureKind.cs
index 417622d6..76350795 100644
--- a/sources/ClangSharp.Interop/CX_VariableCaptureKind.cs
+++ b/sources/ClangSharp.Interop/CX_VariableCaptureKind.cs
@@ -9,5 +9,5 @@ public enum CX_VariableCaptureKind
CX_VCK_This,
CX_VCK_ByRef,
CX_VCK_ByCopy,
- CX_VCK_VLAType
+ CX_VCK_VLAType,
}
diff --git a/sources/ClangSharp.Interop/ClangSharp.Interop.csproj b/sources/ClangSharp.Interop/ClangSharp.Interop.csproj
index 55335147..75455540 100644
--- a/sources/ClangSharp.Interop/ClangSharp.Interop.csproj
+++ b/sources/ClangSharp.Interop/ClangSharp.Interop.csproj
@@ -2,7 +2,7 @@
- net6.0;netstandard2.0
+ net6.0;net7.0;netstandard2.0
@@ -11,8 +11,11 @@
-
-
+
+
+
+
+
diff --git a/sources/ClangSharp.Interop/Extensions/CXClientData.cs b/sources/ClangSharp.Interop/Extensions/CXClientData.cs
index e73df948..f26edc2d 100644
--- a/sources/ClangSharp.Interop/Extensions/CXClientData.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXClientData.cs
@@ -21,7 +21,7 @@ public CXClientData(IntPtr handle)
public static bool operator !=(CXClientData left, CXClientData right) => left.Handle != right.Handle;
- public override bool Equals(object obj) => (obj is CXClientData other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXClientData other) && Equals(other);
public bool Equals(CXClientData other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXCompilationDatabase.cs b/sources/ClangSharp.Interop/Extensions/CXCompilationDatabase.cs
index 0e8a18ca..f8f34eac 100644
--- a/sources/ClangSharp.Interop/Extensions/CXCompilationDatabase.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXCompilationDatabase.cs
@@ -42,7 +42,7 @@ public void Dispose()
}
}
- public override bool Equals(object obj) => (obj is CXCompilationDatabase other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXCompilationDatabase other) && Equals(other);
public bool Equals(CXCompilationDatabase other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXCompileCommand.cs b/sources/ClangSharp.Interop/Extensions/CXCompileCommand.cs
index b74185ec..7b0d1601 100644
--- a/sources/ClangSharp.Interop/Extensions/CXCompileCommand.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXCompileCommand.cs
@@ -29,7 +29,7 @@ public CXCompileCommand(IntPtr handle)
public static bool operator !=(CXCompileCommand left, CXCompileCommand right) => left.Handle != right.Handle;
- public override bool Equals(object obj) => (obj is CXCompileCommand other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXCompileCommand other) && Equals(other);
public bool Equals(CXCompileCommand other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXCompileCommands.cs b/sources/ClangSharp.Interop/Extensions/CXCompileCommands.cs
index 05da1260..7c79b242 100644
--- a/sources/ClangSharp.Interop/Extensions/CXCompileCommands.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXCompileCommands.cs
@@ -38,7 +38,7 @@ public void Dispose()
}
}
- public override bool Equals(object obj) => (obj is CXCompileCommands other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXCompileCommands other) && Equals(other);
public bool Equals(CXCompileCommands other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXCompletionString.cs b/sources/ClangSharp.Interop/Extensions/CXCompletionString.cs
index b042a218..39aef731 100644
--- a/sources/ClangSharp.Interop/Extensions/CXCompletionString.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXCompletionString.cs
@@ -31,7 +31,7 @@ public CXCompletionString(IntPtr handle)
public static bool operator !=(CXCompletionString left, CXCompletionString right) => left.Handle != right.Handle;
- public override bool Equals(object obj) => (obj is CXCompletionString other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXCompletionString other) && Equals(other);
public bool Equals(CXCompletionString other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXCursor.cs b/sources/ClangSharp.Interop/Extensions/CXCursor.cs
index 18e755b4..777378bf 100644
--- a/sources/ClangSharp.Interop/Extensions/CXCursor.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXCursor.cs
@@ -25,25 +25,36 @@ public string AttrKindSpelling
{
get
{
- Debug.Assert(CX_AttrKind.CX_AttrKind_FirstDeclOrTypeAttr == CX_AttrKind.CX_AttrKind_AArch64VectorPcs);
- Debug.Assert(CX_AttrKind.CX_AttrKind_LastDeclOrTypeAttr == CX_AttrKind.CX_AttrKind_VectorCall);
- Debug.Assert(CX_AttrKind.CX_AttrKind_FirstInheritableParamAttr == CX_AttrKind.CX_AttrKind_SwiftAsyncContext);
- Debug.Assert(CX_AttrKind.CX_AttrKind_LastInheritableParamAttr == CX_AttrKind.CX_AttrKind_UseHandle);
- Debug.Assert(CX_AttrKind.CX_AttrKind_FirstParameterABIAttr == CX_AttrKind.CX_AttrKind_SwiftAsyncContext);
- Debug.Assert(CX_AttrKind.CX_AttrKind_LastParameterABIAttr == CX_AttrKind.CX_AttrKind_SwiftIndirectResult);
+ Debug.Assert(CX_AttrKind.CX_AttrKind_FirstAttr == CX_AttrKind.CX_AttrKind_AddressSpace);
Debug.Assert(CX_AttrKind.CX_AttrKind_LastAttr == CX_AttrKind.CX_AttrKind_Thread);
+
Debug.Assert(CX_AttrKind.CX_AttrKind_FirstTypeAttr == CX_AttrKind.CX_AttrKind_AddressSpace);
Debug.Assert(CX_AttrKind.CX_AttrKind_LastTypeAttr == CX_AttrKind.CX_AttrKind_UPtr);
+
Debug.Assert(CX_AttrKind.CX_AttrKind_FirstStmtAttr == CX_AttrKind.CX_AttrKind_FallThrough);
Debug.Assert(CX_AttrKind.CX_AttrKind_LastStmtAttr == CX_AttrKind.CX_AttrKind_Unlikely);
- Debug.Assert(CX_AttrKind.CX_AttrKind_FirstInheritableAttr == CX_AttrKind.CX_AttrKind_NoMerge);
- Debug.Assert(CX_AttrKind.CX_AttrKind_LastInheritableAttr == CX_AttrKind.CX_AttrKind_XRayLogArgs);
- return AttrKind switch
- {
+ Debug.Assert(CX_AttrKind.CX_AttrKind_FirstDeclOrStmtAttr == CX_AttrKind.CX_AttrKind_AlwaysInline);
+ Debug.Assert(CX_AttrKind.CX_AttrKind_LastDeclOrStmtAttr == CX_AttrKind.CX_AttrKind_NoMerge);
+
+ Debug.Assert(CX_AttrKind.CX_AttrKind_FirstInheritableAttr == CX_AttrKind.CX_AttrKind_AlwaysInline);
+ Debug.Assert(CX_AttrKind.CX_AttrKind_LastInheritableAttr == CX_AttrKind.CX_AttrKind_ZeroCallUsedRegs);
+
+ Debug.Assert(CX_AttrKind.CX_AttrKind_FirstDeclOrTypeAttr == CX_AttrKind.CX_AttrKind_AArch64SVEPcs);
+ Debug.Assert(CX_AttrKind.CX_AttrKind_LastDeclOrTypeAttr == CX_AttrKind.CX_AttrKind_VectorCall);
+
+ Debug.Assert(CX_AttrKind.CX_AttrKind_FirstInheritableParamAttr == CX_AttrKind.CX_AttrKind_SwiftAsyncContext);
+ Debug.Assert(CX_AttrKind.CX_AttrKind_LastInheritableParamAttr == CX_AttrKind.CX_AttrKind_UseHandle);
+
+ Debug.Assert(CX_AttrKind.CX_AttrKind_FirstParameterABIAttr == CX_AttrKind.CX_AttrKind_SwiftAsyncContext);
+ Debug.Assert(CX_AttrKind.CX_AttrKind_LastParameterABIAttr == CX_AttrKind.CX_AttrKind_SwiftIndirectResult);
+
+ return AttrKind switch {
CX_AttrKind.CX_AttrKind_Invalid => "Invalid",
CX_AttrKind.CX_AttrKind_AddressSpace => "AddressSpace",
+ CX_AttrKind.CX_AttrKind_AnnotateType => "AnnotateType",
CX_AttrKind.CX_AttrKind_ArmMveStrictPolymorphism => "ArmMveStrictPolymorphism",
+ CX_AttrKind.CX_AttrKind_BTFTypeTag => "BTFTypeTag",
CX_AttrKind.CX_AttrKind_CmseNSCall => "CmseNSCall",
CX_AttrKind.CX_AttrKind_NoDeref => "NoDeref",
CX_AttrKind.CX_AttrKind_ObjCGC => "ObjCGC",
@@ -52,6 +63,8 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_OpenCLConstantAddressSpace => "OpenCLConstantAddressSpace",
CX_AttrKind.CX_AttrKind_OpenCLGenericAddressSpace => "OpenCLGenericAddressSpace",
CX_AttrKind.CX_AttrKind_OpenCLGlobalAddressSpace => "OpenCLGlobalAddressSpace",
+ CX_AttrKind.CX_AttrKind_OpenCLGlobalDeviceAddressSpace => "OpenCLGlobalDeviceAddressSpace",
+ CX_AttrKind.CX_AttrKind_OpenCLGlobalHostAddressSpace => "OpenCLGlobalHostAddressSpace",
CX_AttrKind.CX_AttrKind_OpenCLLocalAddressSpace => "OpenCLLocalAddressSpace",
CX_AttrKind.CX_AttrKind_OpenCLPrivateAddressSpace => "OpenCLPrivateAddressSpace",
CX_AttrKind.CX_AttrKind_Ptr32 => "Ptr32",
@@ -60,11 +73,20 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_TypeNonNull => "TypeNonNull",
CX_AttrKind.CX_AttrKind_TypeNullUnspecified => "TypeNullUnspecified",
CX_AttrKind.CX_AttrKind_TypeNullable => "TypeNullable",
+ CX_AttrKind.CX_AttrKind_TypeNullableResult => "TypeNullableResult",
CX_AttrKind.CX_AttrKind_UPtr => "UPtr",
CX_AttrKind.CX_AttrKind_FallThrough => "FallThrough",
- CX_AttrKind.CX_AttrKind_NoMerge => "NoMerge",
+ CX_AttrKind.CX_AttrKind_Likely => "Likely",
+ CX_AttrKind.CX_AttrKind_MustTail => "MustTail",
+ CX_AttrKind.CX_AttrKind_OpenCLUnrollHint => "OpenCLUnrollHint",
CX_AttrKind.CX_AttrKind_Suppress => "Suppress",
+ CX_AttrKind.CX_AttrKind_Unlikely => "Unlikely",
+ CX_AttrKind.CX_AttrKind_AlwaysInline => "AlwaysInline",
+ CX_AttrKind.CX_AttrKind_NoInline => "NoInline",
+ CX_AttrKind.CX_AttrKind_NoMerge => "NoMerge",
+ CX_AttrKind.CX_AttrKind_AArch64SVEPcs => "AArch64SVEPcs",
CX_AttrKind.CX_AttrKind_AArch64VectorPcs => "AArch64VectorPcs",
+ CX_AttrKind.CX_AttrKind_AMDGPUKernelCall => "AMDGPUKernelCall",
CX_AttrKind.CX_AttrKind_AcquireHandle => "AcquireHandle",
CX_AttrKind.CX_AttrKind_AnyX86NoCfCheck => "AnyX86NoCfCheck",
CX_AttrKind.CX_AttrKind_CDecl => "CDecl",
@@ -80,10 +102,12 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_PreserveMost => "PreserveMost",
CX_AttrKind.CX_AttrKind_RegCall => "RegCall",
CX_AttrKind.CX_AttrKind_StdCall => "StdCall",
+ CX_AttrKind.CX_AttrKind_SwiftAsyncCall => "SwiftAsyncCall",
CX_AttrKind.CX_AttrKind_SwiftCall => "SwiftCall",
CX_AttrKind.CX_AttrKind_SysVABI => "SysVABI",
CX_AttrKind.CX_AttrKind_ThisCall => "ThisCall",
CX_AttrKind.CX_AttrKind_VectorCall => "VectorCall",
+ CX_AttrKind.CX_AttrKind_SwiftAsyncContext => "SwiftAsyncContext",
CX_AttrKind.CX_AttrKind_SwiftContext => "SwiftContext",
CX_AttrKind.CX_AttrKind_SwiftErrorResult => "SwiftErrorResult",
CX_AttrKind.CX_AttrKind_SwiftIndirectResult => "SwiftIndirectResult",
@@ -107,11 +131,11 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_AcquiredAfter => "AcquiredAfter",
CX_AttrKind.CX_AttrKind_AcquiredBefore => "AcquiredBefore",
CX_AttrKind.CX_AttrKind_AlignMac68k => "AlignMac68k",
+ CX_AttrKind.CX_AttrKind_AlignNatural => "AlignNatural",
CX_AttrKind.CX_AttrKind_Aligned => "Aligned",
CX_AttrKind.CX_AttrKind_AllocAlign => "AllocAlign",
CX_AttrKind.CX_AttrKind_AllocSize => "AllocSize",
CX_AttrKind.CX_AttrKind_AlwaysDestroy => "AlwaysDestroy",
- CX_AttrKind.CX_AttrKind_AlwaysInline => "AlwaysInline",
CX_AttrKind.CX_AttrKind_AnalyzerNoReturn => "AnalyzerNoReturn",
CX_AttrKind.CX_AttrKind_AnyX86Interrupt => "AnyX86Interrupt",
CX_AttrKind.CX_AttrKind_AnyX86NoCallerSavedRegisters => "AnyX86NoCallerSavedRegisters",
@@ -124,9 +148,12 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_AssertExclusiveLock => "AssertExclusiveLock",
CX_AttrKind.CX_AttrKind_AssertSharedLock => "AssertSharedLock",
CX_AttrKind.CX_AttrKind_AssumeAligned => "AssumeAligned",
+ CX_AttrKind.CX_AttrKind_Assumption => "Assumption",
CX_AttrKind.CX_AttrKind_Availability => "Availability",
CX_AttrKind.CX_AttrKind_BPFPreserveAccessIndex => "BPFPreserveAccessIndex",
+ CX_AttrKind.CX_AttrKind_BTFDeclTag => "BTFDeclTag",
CX_AttrKind.CX_AttrKind_Blocks => "Blocks",
+ CX_AttrKind.CX_AttrKind_Builtin => "Builtin",
CX_AttrKind.CX_AttrKind_C11NoReturn => "C11NoReturn",
CX_AttrKind.CX_AttrKind_CFAuditedTransfer => "CFAuditedTransfer",
CX_AttrKind.CX_AttrKind_CFGuard => "CFGuard",
@@ -168,11 +195,16 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_DLLImportStaticLocal => "DLLImportStaticLocal",
CX_AttrKind.CX_AttrKind_Deprecated => "Deprecated",
CX_AttrKind.CX_AttrKind_Destructor => "Destructor",
+ CX_AttrKind.CX_AttrKind_DiagnoseAsBuiltin => "DiagnoseAsBuiltin",
CX_AttrKind.CX_AttrKind_DiagnoseIf => "DiagnoseIf",
+ CX_AttrKind.CX_AttrKind_DisableSanitizerInstrumentation => "DisableSanitizerInstrumentation",
CX_AttrKind.CX_AttrKind_DisableTailCalls => "DisableTailCalls",
CX_AttrKind.CX_AttrKind_EmptyBases => "EmptyBases",
CX_AttrKind.CX_AttrKind_EnableIf => "EnableIf",
+ CX_AttrKind.CX_AttrKind_EnforceTCB => "EnforceTCB",
+ CX_AttrKind.CX_AttrKind_EnforceTCBLeaf => "EnforceTCBLeaf",
CX_AttrKind.CX_AttrKind_EnumExtensibility => "EnumExtensibility",
+ CX_AttrKind.CX_AttrKind_Error => "Error",
CX_AttrKind.CX_AttrKind_ExcludeFromExplicitInstantiation => "ExcludeFromExplicitInstantiation",
CX_AttrKind.CX_AttrKind_ExclusiveTrylockFunction => "ExclusiveTrylockFunction",
CX_AttrKind.CX_AttrKind_ExternalSourceSymbol => "ExternalSourceSymbol",
@@ -181,9 +213,14 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_Flatten => "Flatten",
CX_AttrKind.CX_AttrKind_Format => "Format",
CX_AttrKind.CX_AttrKind_FormatArg => "FormatArg",
+ CX_AttrKind.CX_AttrKind_FunctionReturnThunks => "FunctionReturnThunks",
CX_AttrKind.CX_AttrKind_GNUInline => "GNUInline",
CX_AttrKind.CX_AttrKind_GuardedBy => "GuardedBy",
CX_AttrKind.CX_AttrKind_GuardedVar => "GuardedVar",
+ CX_AttrKind.CX_AttrKind_HIPManaged => "HIPManaged",
+ CX_AttrKind.CX_AttrKind_HLSLNumThreads => "HLSLNumThreads",
+ CX_AttrKind.CX_AttrKind_HLSLSV_GroupIndex => "HLSLSV_GroupIndex",
+ CX_AttrKind.CX_AttrKind_HLSLShader => "HLSLShader",
CX_AttrKind.CX_AttrKind_Hot => "Hot",
CX_AttrKind.CX_AttrKind_IBAction => "IBAction",
CX_AttrKind.CX_AttrKind_IBOutlet => "IBOutlet",
@@ -192,8 +229,10 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_InternalLinkage => "InternalLinkage",
CX_AttrKind.CX_AttrKind_LTOVisibilityPublic => "LTOVisibilityPublic",
CX_AttrKind.CX_AttrKind_LayoutVersion => "LayoutVersion",
+ CX_AttrKind.CX_AttrKind_Leaf => "Leaf",
CX_AttrKind.CX_AttrKind_LockReturned => "LockReturned",
CX_AttrKind.CX_AttrKind_LocksExcluded => "LocksExcluded",
+ CX_AttrKind.CX_AttrKind_M68kInterrupt => "M68kInterrupt",
CX_AttrKind.CX_AttrKind_MIGServerRoutine => "MIGServerRoutine",
CX_AttrKind.CX_AttrKind_MSAllocator => "MSAllocator",
CX_AttrKind.CX_AttrKind_MSInheritance => "MSInheritance",
@@ -211,6 +250,7 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_MipsLongCall => "MipsLongCall",
CX_AttrKind.CX_AttrKind_MipsShortCall => "MipsShortCall",
CX_AttrKind.CX_AttrKind_NSConsumesSelf => "NSConsumesSelf",
+ CX_AttrKind.CX_AttrKind_NSErrorDomain => "NSErrorDomain",
CX_AttrKind.CX_AttrKind_NSReturnsAutoreleased => "NSReturnsAutoreleased",
CX_AttrKind.CX_AttrKind_NSReturnsNotRetained => "NSReturnsNotRetained",
CX_AttrKind.CX_AttrKind_Naked => "Naked",
@@ -219,10 +259,11 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_NoDebug => "NoDebug",
CX_AttrKind.CX_AttrKind_NoDestroy => "NoDestroy",
CX_AttrKind.CX_AttrKind_NoDuplicate => "NoDuplicate",
- CX_AttrKind.CX_AttrKind_NoInline => "NoInline",
CX_AttrKind.CX_AttrKind_NoInstrumentFunction => "NoInstrumentFunction",
CX_AttrKind.CX_AttrKind_NoMicroMips => "NoMicroMips",
CX_AttrKind.CX_AttrKind_NoMips16 => "NoMips16",
+ CX_AttrKind.CX_AttrKind_NoProfileFunction => "NoProfileFunction",
+ CX_AttrKind.CX_AttrKind_NoRandomizeLayout => "NoRandomizeLayout",
CX_AttrKind.CX_AttrKind_NoReturn => "NoReturn",
CX_AttrKind.CX_AttrKind_NoSanitize => "NoSanitize",
CX_AttrKind.CX_AttrKind_NoSpeculativeLoadHardening => "NoSpeculativeLoadHardening",
@@ -259,7 +300,6 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_ObjCSubclassingRestricted => "ObjCSubclassingRestricted",
CX_AttrKind.CX_AttrKind_OpenCLIntelReqdSubGroupSize => "OpenCLIntelReqdSubGroupSize",
CX_AttrKind.CX_AttrKind_OpenCLKernel => "OpenCLKernel",
- CX_AttrKind.CX_AttrKind_OpenCLUnrollHint => "OpenCLUnrollHint",
CX_AttrKind.CX_AttrKind_OptimizeNone => "OptimizeNone",
CX_AttrKind.CX_AttrKind_Override => "Override",
CX_AttrKind.CX_AttrKind_Owner => "Owner",
@@ -273,19 +313,23 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_PragmaClangRelroSection => "PragmaClangRelroSection",
CX_AttrKind.CX_AttrKind_PragmaClangRodataSection => "PragmaClangRodataSection",
CX_AttrKind.CX_AttrKind_PragmaClangTextSection => "PragmaClangTextSection",
+ CX_AttrKind.CX_AttrKind_PreferredName => "PreferredName",
CX_AttrKind.CX_AttrKind_PtGuardedBy => "PtGuardedBy",
CX_AttrKind.CX_AttrKind_PtGuardedVar => "PtGuardedVar",
CX_AttrKind.CX_AttrKind_Pure => "Pure",
CX_AttrKind.CX_AttrKind_RISCVInterrupt => "RISCVInterrupt",
+ CX_AttrKind.CX_AttrKind_RandomizeLayout => "RandomizeLayout",
CX_AttrKind.CX_AttrKind_Reinitializes => "Reinitializes",
CX_AttrKind.CX_AttrKind_ReleaseCapability => "ReleaseCapability",
CX_AttrKind.CX_AttrKind_ReqdWorkGroupSize => "ReqdWorkGroupSize",
CX_AttrKind.CX_AttrKind_RequiresCapability => "RequiresCapability",
CX_AttrKind.CX_AttrKind_Restrict => "Restrict",
+ CX_AttrKind.CX_AttrKind_Retain => "Retain",
CX_AttrKind.CX_AttrKind_ReturnTypestate => "ReturnTypestate",
CX_AttrKind.CX_AttrKind_ReturnsNonNull => "ReturnsNonNull",
CX_AttrKind.CX_AttrKind_ReturnsTwice => "ReturnsTwice",
CX_AttrKind.CX_AttrKind_SYCLKernel => "SYCLKernel",
+ CX_AttrKind.CX_AttrKind_SYCLSpecialClass => "SYCLSpecialClass",
CX_AttrKind.CX_AttrKind_ScopedLockable => "ScopedLockable",
CX_AttrKind.CX_AttrKind_Section => "Section",
CX_AttrKind.CX_AttrKind_SelectAny => "SelectAny",
@@ -293,8 +337,21 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_SetTypestate => "SetTypestate",
CX_AttrKind.CX_AttrKind_SharedTrylockFunction => "SharedTrylockFunction",
CX_AttrKind.CX_AttrKind_SpeculativeLoadHardening => "SpeculativeLoadHardening",
+ CX_AttrKind.CX_AttrKind_StandaloneDebug => "StandaloneDebug",
+ CX_AttrKind.CX_AttrKind_StrictFP => "StrictFP",
+ CX_AttrKind.CX_AttrKind_SwiftAsync => "SwiftAsync",
+ CX_AttrKind.CX_AttrKind_SwiftAsyncError => "SwiftAsyncError",
+ CX_AttrKind.CX_AttrKind_SwiftAsyncName => "SwiftAsyncName",
+ CX_AttrKind.CX_AttrKind_SwiftAttr => "SwiftAttr",
+ CX_AttrKind.CX_AttrKind_SwiftBridge => "SwiftBridge",
+ CX_AttrKind.CX_AttrKind_SwiftBridgedTypedef => "SwiftBridgedTypedef",
+ CX_AttrKind.CX_AttrKind_SwiftError => "SwiftError",
+ CX_AttrKind.CX_AttrKind_SwiftName => "SwiftName",
+ CX_AttrKind.CX_AttrKind_SwiftNewType => "SwiftNewType",
+ CX_AttrKind.CX_AttrKind_SwiftPrivate => "SwiftPrivate",
CX_AttrKind.CX_AttrKind_TLSModel => "TLSModel",
CX_AttrKind.CX_AttrKind_Target => "Target",
+ CX_AttrKind.CX_AttrKind_TargetClones => "TargetClones",
CX_AttrKind.CX_AttrKind_TestTypestate => "TestTypestate",
CX_AttrKind.CX_AttrKind_TransparentUnion => "TransparentUnion",
CX_AttrKind.CX_AttrKind_TrivialABI => "TrivialABI",
@@ -305,6 +362,7 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_Uninitialized => "Uninitialized",
CX_AttrKind.CX_AttrKind_Unused => "Unused",
CX_AttrKind.CX_AttrKind_Used => "Used",
+ CX_AttrKind.CX_AttrKind_UsingIfExists => "UsingIfExists",
CX_AttrKind.CX_AttrKind_Uuid => "Uuid",
CX_AttrKind.CX_AttrKind_VecReturn => "VecReturn",
CX_AttrKind.CX_AttrKind_VecTypeHint => "VecTypeHint",
@@ -321,9 +379,12 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_X86ForceAlignArgPointer => "X86ForceAlignArgPointer",
CX_AttrKind.CX_AttrKind_XRayInstrument => "XRayInstrument",
CX_AttrKind.CX_AttrKind_XRayLogArgs => "XRayLogArgs",
+ CX_AttrKind.CX_AttrKind_ZeroCallUsedRegs => "ZeroCallUsedRegs",
CX_AttrKind.CX_AttrKind_AbiTag => "AbiTag",
CX_AttrKind.CX_AttrKind_Alias => "Alias",
CX_AttrKind.CX_AttrKind_AlignValue => "AlignValue",
+ CX_AttrKind.CX_AttrKind_BuiltinAlias => "BuiltinAlias",
+ CX_AttrKind.CX_AttrKind_CalledOnce => "CalledOnce",
CX_AttrKind.CX_AttrKind_IFunc => "IFunc",
CX_AttrKind.CX_AttrKind_InitSeg => "InitSeg",
CX_AttrKind.CX_AttrKind_LoaderUninitialized => "LoaderUninitialized",
@@ -340,11 +401,13 @@ public string AttrKindSpelling
CX_AttrKind.CX_AttrKind_ObjCDirect => "ObjCDirect",
CX_AttrKind.CX_AttrKind_ObjCDirectMembers => "ObjCDirectMembers",
CX_AttrKind.CX_AttrKind_ObjCNonLazyClass => "ObjCNonLazyClass",
+ CX_AttrKind.CX_AttrKind_ObjCNonRuntimeProtocol => "ObjCNonRuntimeProtocol",
CX_AttrKind.CX_AttrKind_ObjCRuntimeName => "ObjCRuntimeName",
CX_AttrKind.CX_AttrKind_ObjCRuntimeVisible => "ObjCRuntimeVisible",
CX_AttrKind.CX_AttrKind_OpenCLAccess => "OpenCLAccess",
CX_AttrKind.CX_AttrKind_Overloadable => "Overloadable",
CX_AttrKind.CX_AttrKind_RenderScriptKernel => "RenderScriptKernel",
+ CX_AttrKind.CX_AttrKind_SwiftObjCMembers => "SwiftObjCMembers",
CX_AttrKind.CX_AttrKind_Thread => "Thread",
_ => Kind.ToString()[12..],
};
@@ -393,8 +456,7 @@ public string CastKindSpelling
{
get
{
- return CastKind switch
- {
+ return CastKind switch {
CX_CastKind.CX_CK_Invalid => "Invalid",
CX_CastKind.CX_CK_Dependent => "Dependent",
CX_CastKind.CX_CK_BitCast => "BitCast",
@@ -426,6 +488,8 @@ public string CastKindSpelling
CX_CastKind.CX_CK_IntegralCast => "IntegralCast",
CX_CastKind.CX_CK_IntegralToBoolean => "IntegralToBoolean",
CX_CastKind.CX_CK_IntegralToFloating => "IntegralToFloating",
+ CX_CastKind.CX_CK_FloatingToFixedPoint => "FloatingToFixedPoint",
+ CX_CastKind.CX_CK_FixedPointToFloating => "FixedPointToFloating",
CX_CastKind.CX_CK_FixedPointCast => "FixedPointCast",
CX_CastKind.CX_CK_FixedPointToIntegral => "FixedPointToIntegral",
CX_CastKind.CX_CK_IntegralToFixedPoint => "IntegralToFixedPoint",
@@ -526,49 +590,70 @@ public string DeclKindSpelling
{
get
{
+ Debug.Assert(CX_DeclKind.CX_DeclKind_FirstBaseUsing == CX_DeclKind.CX_DeclKind_Using);
+ Debug.Assert(CX_DeclKind.CX_DeclKind_LastBaseUsing == CX_DeclKind.CX_DeclKind_UsingEnum);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstObjCImpl == CX_DeclKind.CX_DeclKind_ObjCCategoryImpl);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastObjCImpl == CX_DeclKind.CX_DeclKind_ObjCImplementation);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstObjCContainer == CX_DeclKind.CX_DeclKind_ObjCCategory);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastObjCContainer == CX_DeclKind.CX_DeclKind_ObjCProtocol);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstRedeclarableTemplate == CX_DeclKind.CX_DeclKind_ClassTemplate);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastRedeclarableTemplate == CX_DeclKind.CX_DeclKind_VarTemplate);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstTemplate == CX_DeclKind.CX_DeclKind_BuiltinTemplate);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastTemplate == CX_DeclKind.CX_DeclKind_TemplateTemplateParm);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstClassTemplateSpecialization == CX_DeclKind.CX_DeclKind_ClassTemplateSpecialization);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastClassTemplateSpecialization == CX_DeclKind.CX_DeclKind_ClassTemplatePartialSpecialization);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstCXXRecord == CX_DeclKind.CX_DeclKind_CXXRecord);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastCXXRecord == CX_DeclKind.CX_DeclKind_ClassTemplatePartialSpecialization);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstRecord == CX_DeclKind.CX_DeclKind_Record);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastRecord == CX_DeclKind.CX_DeclKind_ClassTemplatePartialSpecialization);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstTag == CX_DeclKind.CX_DeclKind_Enum);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastTag == CX_DeclKind.CX_DeclKind_ClassTemplatePartialSpecialization);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstTypedefName == CX_DeclKind.CX_DeclKind_ObjCTypeParam);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastTypedefName == CX_DeclKind.CX_DeclKind_Typedef);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstType == CX_DeclKind.CX_DeclKind_Enum);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastType == CX_DeclKind.CX_DeclKind_UnresolvedUsingTypename);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstUsingShadow == CX_DeclKind.CX_DeclKind_UsingShadow);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastUsingShadow == CX_DeclKind.CX_DeclKind_ConstructorUsingShadow);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstField == CX_DeclKind.CX_DeclKind_Field);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastField == CX_DeclKind.CX_DeclKind_ObjCIvar);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstCXXMethod == CX_DeclKind.CX_DeclKind_CXXMethod);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastCXXMethod == CX_DeclKind.CX_DeclKind_CXXDestructor);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstFunction == CX_DeclKind.CX_DeclKind_Function);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastFunction == CX_DeclKind.CX_DeclKind_CXXDestructor);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstVarTemplateSpecialization == CX_DeclKind.CX_DeclKind_VarTemplateSpecialization);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastVarTemplateSpecialization == CX_DeclKind.CX_DeclKind_VarTemplatePartialSpecialization);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstVar == CX_DeclKind.CX_DeclKind_Var);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastVar == CX_DeclKind.CX_DeclKind_VarTemplatePartialSpecialization);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstDeclarator == CX_DeclKind.CX_DeclKind_Field);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastDeclarator == CX_DeclKind.CX_DeclKind_VarTemplatePartialSpecialization);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstValue == CX_DeclKind.CX_DeclKind_Binding);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastValue == CX_DeclKind.CX_DeclKind_UnresolvedUsingValue);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstNamed == CX_DeclKind.CX_DeclKind_Using);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastNamed == CX_DeclKind.CX_DeclKind_UnresolvedUsingValue);
+
Debug.Assert(CX_DeclKind.CX_DeclKind_FirstDecl == CX_DeclKind.CX_DeclKind_AccessSpec);
Debug.Assert(CX_DeclKind.CX_DeclKind_LastDecl == CX_DeclKind.CX_DeclKind_TranslationUnit);
- return DeclKind switch
- {
+ return DeclKind switch {
CX_DeclKind.CX_DeclKind_Invalid => "Invalid",
CX_DeclKind.CX_DeclKind_AccessSpec => "AccessSpec",
CX_DeclKind.CX_DeclKind_Block => "Block",
@@ -583,6 +668,8 @@ public string DeclKindSpelling
CX_DeclKind.CX_DeclKind_Import => "Import",
CX_DeclKind.CX_DeclKind_LifetimeExtendedTemporary => "LifetimeExtendedTemporary",
CX_DeclKind.CX_DeclKind_LinkageSpec => "LinkageSpec",
+ CX_DeclKind.CX_DeclKind_Using => "Using",
+ CX_DeclKind.CX_DeclKind_UsingEnum => "UsingEnum",
CX_DeclKind.CX_DeclKind_Label => "Label",
CX_DeclKind.CX_DeclKind_Namespace => "Namespace",
CX_DeclKind.CX_DeclKind_NamespaceAlias => "NamespaceAlias",
@@ -611,7 +698,7 @@ public string DeclKindSpelling
CX_DeclKind.CX_DeclKind_TypeAlias => "TypeAlias",
CX_DeclKind.CX_DeclKind_Typedef => "Typedef",
CX_DeclKind.CX_DeclKind_UnresolvedUsingTypename => "UnresolvedUsingTypename",
- CX_DeclKind.CX_DeclKind_Using => "Using",
+ CX_DeclKind.CX_DeclKind_UnresolvedUsingIfExists => "UnresolvedUsingIfExists",
CX_DeclKind.CX_DeclKind_UsingDirective => "UsingDirective",
CX_DeclKind.CX_DeclKind_UsingPack => "UsingPack",
CX_DeclKind.CX_DeclKind_UsingShadow => "UsingShadow",
@@ -640,6 +727,8 @@ public string DeclKindSpelling
CX_DeclKind.CX_DeclKind_MSGuid => "MSGuid",
CX_DeclKind.CX_DeclKind_OMPDeclareMapper => "OMPDeclareMapper",
CX_DeclKind.CX_DeclKind_OMPDeclareReduction => "OMPDeclareReduction",
+ CX_DeclKind.CX_DeclKind_TemplateParamObject => "TemplateParamObject",
+ CX_DeclKind.CX_DeclKind_UnnamedGlobalConstant => "UnnamedGlobalConstant",
CX_DeclKind.CX_DeclKind_UnresolvedUsingValue => "UnresolvedUsingValue",
CX_DeclKind.CX_DeclKind_OMPAllocate => "OMPAllocate",
CX_DeclKind.CX_DeclKind_OMPRequires => "OMPRequires",
@@ -1115,41 +1204,62 @@ public string StmtClassSpelling
{
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstAsmStmt == CX_StmtClass.CX_StmtClass_GCCAsmStmt);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastAsmStmt == CX_StmtClass.CX_StmtClass_MSAsmStmt);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstOMPLoopDirective == CX_StmtClass.CX_StmtClass_OMPDistributeDirective);
- Debug.Assert(CX_StmtClass.CX_StmtClass_LastOMPLoopDirective == CX_StmtClass.CX_StmtClass_OMPTeamsDistributeSimdDirective);
+ Debug.Assert(CX_StmtClass.CX_StmtClass_LastOMPLoopDirective == CX_StmtClass.CX_StmtClass_OMPTeamsGenericLoopDirective);
+
+ Debug.Assert(CX_StmtClass.CX_StmtClass_FirstOMPLoopTransformationDirective == CX_StmtClass.CX_StmtClass_OMPTileDirective);
+ Debug.Assert(CX_StmtClass.CX_StmtClass_LastOMPLoopTransformationDirective == CX_StmtClass.CX_StmtClass_OMPUnrollDirective);
+
+ Debug.Assert(CX_StmtClass.CX_StmtClass_FirstOMPLoopBasedDirective == CX_StmtClass.CX_StmtClass_OMPDistributeDirective);
+ Debug.Assert(CX_StmtClass.CX_StmtClass_LastOMPLoopBasedDirective == CX_StmtClass.CX_StmtClass_OMPUnrollDirective);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstOMPExecutableDirective == CX_StmtClass.CX_StmtClass_OMPAtomicDirective);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastOMPExecutableDirective == CX_StmtClass.CX_StmtClass_OMPTeamsDirective);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstSwitchCase == CX_StmtClass.CX_StmtClass_CaseStmt);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastSwitchCase == CX_StmtClass.CX_StmtClass_DefaultStmt);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstAbstractConditionalOperator == CX_StmtClass.CX_StmtClass_BinaryConditionalOperator);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastAbstractConditionalOperator == CX_StmtClass.CX_StmtClass_ConditionalOperator);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstBinaryOperator == CX_StmtClass.CX_StmtClass_BinaryOperator);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastBinaryOperator == CX_StmtClass.CX_StmtClass_CompoundAssignOperator);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstCXXConstructExpr == CX_StmtClass.CX_StmtClass_CXXConstructExpr);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastCXXConstructExpr == CX_StmtClass.CX_StmtClass_CXXTemporaryObjectExpr);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstCallExpr == CX_StmtClass.CX_StmtClass_CallExpr);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastCallExpr == CX_StmtClass.CX_StmtClass_UserDefinedLiteral);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstCXXNamedCastExpr == CX_StmtClass.CX_StmtClass_CXXAddrspaceCastExpr);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastCXXNamedCastExpr == CX_StmtClass.CX_StmtClass_CXXStaticCastExpr);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstExplicitCastExpr == CX_StmtClass.CX_StmtClass_BuiltinBitCastExpr);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastExplicitCastExpr == CX_StmtClass.CX_StmtClass_ObjCBridgedCastExpr);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstCastExpr == CX_StmtClass.CX_StmtClass_BuiltinBitCastExpr);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastCastExpr == CX_StmtClass.CX_StmtClass_ImplicitCastExpr);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstCoroutineSuspendExpr == CX_StmtClass.CX_StmtClass_CoawaitExpr);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastCoroutineSuspendExpr == CX_StmtClass.CX_StmtClass_CoyieldExpr);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstFullExpr == CX_StmtClass.CX_StmtClass_ConstantExpr);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastFullExpr == CX_StmtClass.CX_StmtClass_ExprWithCleanups);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstOverloadExpr == CX_StmtClass.CX_StmtClass_UnresolvedLookupExpr);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastOverloadExpr == CX_StmtClass.CX_StmtClass_UnresolvedMemberExpr);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstExpr == CX_StmtClass.CX_StmtClass_BinaryConditionalOperator);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastExpr == CX_StmtClass.CX_StmtClass_VAArgExpr);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstValueStmt == CX_StmtClass.CX_StmtClass_AttributedStmt);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastValueStmt == CX_StmtClass.CX_StmtClass_LabelStmt);
+
Debug.Assert(CX_StmtClass.CX_StmtClass_FirstStmt == CX_StmtClass.CX_StmtClass_GCCAsmStmt);
Debug.Assert(CX_StmtClass.CX_StmtClass_LastStmt == CX_StmtClass.CX_StmtClass_WhileStmt);
- return StmtClass switch
- {
+ return StmtClass switch {
CX_StmtClass.CX_StmtClass_Invalid => "Invalid",
CX_StmtClass.CX_StmtClass_GCCAsmStmt => "GCCAsmStmt",
CX_StmtClass.CX_StmtClass_MSAsmStmt => "MSAsmStmt",
@@ -1170,41 +1280,58 @@ public string StmtClassSpelling
CX_StmtClass.CX_StmtClass_IndirectGotoStmt => "IndirectGotoStmt",
CX_StmtClass.CX_StmtClass_MSDependentExistsStmt => "MSDependentExistsStmt",
CX_StmtClass.CX_StmtClass_NullStmt => "NullStmt",
+ CX_StmtClass.CX_StmtClass_OMPCanonicalLoop => "OMPCanonicalLoop",
CX_StmtClass.CX_StmtClass_OMPAtomicDirective => "OMPAtomicDirective",
CX_StmtClass.CX_StmtClass_OMPBarrierDirective => "OMPBarrierDirective",
CX_StmtClass.CX_StmtClass_OMPCancelDirective => "OMPCancelDirective",
CX_StmtClass.CX_StmtClass_OMPCancellationPointDirective => "OMPCancellationPointDirective",
CX_StmtClass.CX_StmtClass_OMPCriticalDirective => "OMPCriticalDirective",
CX_StmtClass.CX_StmtClass_OMPDepobjDirective => "OMPDepobjDirective",
+ CX_StmtClass.CX_StmtClass_OMPDispatchDirective => "OMPDispatchDirective",
CX_StmtClass.CX_StmtClass_OMPFlushDirective => "OMPFlushDirective",
+ CX_StmtClass.CX_StmtClass_OMPInteropDirective => "OMPInteropDirective",
CX_StmtClass.CX_StmtClass_OMPDistributeDirective => "OMPDistributeDirective",
CX_StmtClass.CX_StmtClass_OMPDistributeParallelForDirective => "OMPDistributeParallelForDirective",
CX_StmtClass.CX_StmtClass_OMPDistributeParallelForSimdDirective => "OMPDistributeParallelForSimdDirective",
CX_StmtClass.CX_StmtClass_OMPDistributeSimdDirective => "OMPDistributeSimdDirective",
CX_StmtClass.CX_StmtClass_OMPForDirective => "OMPForDirective",
CX_StmtClass.CX_StmtClass_OMPForSimdDirective => "OMPForSimdDirective",
+ CX_StmtClass.CX_StmtClass_OMPGenericLoopDirective => "OMPGenericLoopDirective",
+ CX_StmtClass.CX_StmtClass_OMPMaskedTaskLoopDirective => "OMPMaskedTaskLoopDirective",
+ CX_StmtClass.CX_StmtClass_OMPMaskedTaskLoopSimdDirective => "OMPMaskedTaskLoopSimdDirective",
CX_StmtClass.CX_StmtClass_OMPMasterTaskLoopDirective => "OMPMasterTaskLoopDirective",
CX_StmtClass.CX_StmtClass_OMPMasterTaskLoopSimdDirective => "OMPMasterTaskLoopSimdDirective",
CX_StmtClass.CX_StmtClass_OMPParallelForDirective => "OMPParallelForDirective",
CX_StmtClass.CX_StmtClass_OMPParallelForSimdDirective => "OMPParallelForSimdDirective",
+ CX_StmtClass.CX_StmtClass_OMPParallelGenericLoopDirective => "OMPParallelGenericLoopDirective",
+ CX_StmtClass.CX_StmtClass_OMPParallelMaskedTaskLoopDirective => "OMPParallelMaskedTaskLoopDirective",
+ CX_StmtClass.CX_StmtClass_OMPParallelMaskedTaskLoopSimdDirective => "OMPParallelMaskedTaskLoopSimdDirective",
CX_StmtClass.CX_StmtClass_OMPParallelMasterTaskLoopDirective => "OMPParallelMasterTaskLoopDirective",
CX_StmtClass.CX_StmtClass_OMPParallelMasterTaskLoopSimdDirective => "OMPParallelMasterTaskLoopSimdDirective",
CX_StmtClass.CX_StmtClass_OMPSimdDirective => "OMPSimdDirective",
CX_StmtClass.CX_StmtClass_OMPTargetParallelForSimdDirective => "OMPTargetParallelForSimdDirective",
+ CX_StmtClass.CX_StmtClass_OMPTargetParallelGenericLoopDirective => "OMPTargetParallelGenericLoopDirective",
CX_StmtClass.CX_StmtClass_OMPTargetSimdDirective => "OMPTargetSimdDirective",
CX_StmtClass.CX_StmtClass_OMPTargetTeamsDistributeDirective => "OMPTargetTeamsDistributeDirective",
CX_StmtClass.CX_StmtClass_OMPTargetTeamsDistributeParallelForDirective => "OMPTargetTeamsDistributeParallelForDirective",
CX_StmtClass.CX_StmtClass_OMPTargetTeamsDistributeParallelForSimdDirective => "OMPTargetTeamsDistributeParallelForSimdDirective",
CX_StmtClass.CX_StmtClass_OMPTargetTeamsDistributeSimdDirective => "OMPTargetTeamsDistributeSimdDirective",
+ CX_StmtClass.CX_StmtClass_OMPTargetTeamsGenericLoopDirective => "OMPTargetTeamsGenericLoopDirective",
CX_StmtClass.CX_StmtClass_OMPTaskLoopDirective => "OMPTaskLoopDirective",
CX_StmtClass.CX_StmtClass_OMPTaskLoopSimdDirective => "OMPTaskLoopSimdDirective",
CX_StmtClass.CX_StmtClass_OMPTeamsDistributeDirective => "OMPTeamsDistributeDirective",
CX_StmtClass.CX_StmtClass_OMPTeamsDistributeParallelForDirective => "OMPTeamsDistributeParallelForDirective",
CX_StmtClass.CX_StmtClass_OMPTeamsDistributeParallelForSimdDirective => "OMPTeamsDistributeParallelForSimdDirective",
CX_StmtClass.CX_StmtClass_OMPTeamsDistributeSimdDirective => "OMPTeamsDistributeSimdDirective",
+ CX_StmtClass.CX_StmtClass_OMPTeamsGenericLoopDirective => "OMPTeamsGenericLoopDirective",
+ CX_StmtClass.CX_StmtClass_OMPTileDirective => "OMPTileDirective",
+ CX_StmtClass.CX_StmtClass_OMPUnrollDirective => "OMPUnrollDirective",
+ CX_StmtClass.CX_StmtClass_OMPMaskedDirective => "OMPMaskedDirective",
CX_StmtClass.CX_StmtClass_OMPMasterDirective => "OMPMasterDirective",
+ CX_StmtClass.CX_StmtClass_OMPMetaDirective => "OMPMetaDirective",
CX_StmtClass.CX_StmtClass_OMPOrderedDirective => "OMPOrderedDirective",
CX_StmtClass.CX_StmtClass_OMPParallelDirective => "OMPParallelDirective",
+ CX_StmtClass.CX_StmtClass_OMPParallelMaskedDirective => "OMPParallelMaskedDirective",
CX_StmtClass.CX_StmtClass_OMPParallelMasterDirective => "OMPParallelMasterDirective",
CX_StmtClass.CX_StmtClass_OMPParallelSectionsDirective => "OMPParallelSectionsDirective",
CX_StmtClass.CX_StmtClass_OMPScanDirective => "OMPScanDirective",
@@ -1350,6 +1477,7 @@ public string StmtClassSpelling
CX_StmtClass.CX_StmtClass_PseudoObjectExpr => "PseudoObjectExpr",
CX_StmtClass.CX_StmtClass_RecoveryExpr => "RecoveryExpr",
CX_StmtClass.CX_StmtClass_RequiresExpr => "RequiresExpr",
+ CX_StmtClass.CX_StmtClass_SYCLUniqueStableNameExpr => "SYCLUniqueStableNameExpr",
CX_StmtClass.CX_StmtClass_ShuffleVectorExpr => "ShuffleVectorExpr",
CX_StmtClass.CX_StmtClass_SizeOfPackExpr => "SizeOfPackExpr",
CX_StmtClass.CX_StmtClass_SourceLocExpr => "SourceLocExpr",
@@ -1483,7 +1611,7 @@ public static void DisposeOverriddenCursors(ReadOnlySpan overridden)
}
}
- public override bool Equals(object obj) => (obj is CXCursor other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXCursor other) && Equals(other);
public bool Equals(CXCursor other) => this == other;
@@ -1614,10 +1742,15 @@ public int GetPlatformAvailability(out bool alwaysDeprecated, out CXString depre
public CXChildVisitResult VisitChildren(CXCursorVisitor visitor, CXClientData clientData)
{
- var pVisitor = Marshal.GetFunctionPointerForDelegate(visitor);
- var result = (CXChildVisitResult)clang.visitChildren(this, pVisitor, clientData);
+ var pVisitor = (delegate* unmanaged[Cdecl])Marshal.GetFunctionPointerForDelegate(visitor);
+ var result = VisitChildren(pVisitor, clientData);
GC.KeepAlive(visitor);
return result;
}
+
+ public CXChildVisitResult VisitChildren(delegate* unmanaged[Cdecl] visitor, CXClientData clientData)
+ {
+ return (CXChildVisitResult)clang.visitChildren(this, visitor, clientData);
+ }
}
diff --git a/sources/ClangSharp.Interop/Extensions/CXCursorSet.cs b/sources/ClangSharp.Interop/Extensions/CXCursorSet.cs
index 32829266..f6f76b9c 100644
--- a/sources/ClangSharp.Interop/Extensions/CXCursorSet.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXCursorSet.cs
@@ -34,7 +34,7 @@ public void Dispose()
}
}
- public override bool Equals(object obj) => (obj is CXCursorSet other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXCursorSet other) && Equals(other);
public bool Equals(CXCursorSet other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXDiagnostic.cs b/sources/ClangSharp.Interop/Extensions/CXDiagnostic.cs
index a058a87c..e981b7bf 100644
--- a/sources/ClangSharp.Interop/Extensions/CXDiagnostic.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXDiagnostic.cs
@@ -48,7 +48,7 @@ public void Dispose()
}
}
- public override bool Equals(object obj) => (obj is CXDiagnostic other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXDiagnostic other) && Equals(other);
public bool Equals(CXDiagnostic other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXDiagnosticSet.cs b/sources/ClangSharp.Interop/Extensions/CXDiagnosticSet.cs
index 36ba35ef..ba2df4ff 100644
--- a/sources/ClangSharp.Interop/Extensions/CXDiagnosticSet.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXDiagnosticSet.cs
@@ -49,7 +49,7 @@ public void Dispose()
}
}
- public override bool Equals(object obj) => (obj is CXDiagnosticSet other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXDiagnosticSet other) && Equals(other);
public bool Equals(CXDiagnosticSet other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXEvalResult.cs b/sources/ClangSharp.Interop/Extensions/CXEvalResult.cs
index 70083ad8..a7f2c23c 100644
--- a/sources/ClangSharp.Interop/Extensions/CXEvalResult.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXEvalResult.cs
@@ -28,8 +28,7 @@ public string AsStr
return string.Empty;
}
- var span = new ReadOnlySpan(pStr, int.MaxValue);
- return span.Slice(0, span.IndexOf((byte)'\0')).AsString();
+ return SpanExtensions.AsString(pStr);
}
}
@@ -58,7 +57,7 @@ public void Dispose()
}
}
- public override bool Equals(object obj) => (obj is CXEvalResult other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXEvalResult other) && Equals(other);
public bool Equals(CXEvalResult other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXFile.cs b/sources/ClangSharp.Interop/Extensions/CXFile.cs
index 55b7dc47..e6039773 100644
--- a/sources/ClangSharp.Interop/Extensions/CXFile.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXFile.cs
@@ -25,7 +25,7 @@ public CXFile(IntPtr handle)
public static bool operator !=(CXFile left, CXFile right) => clang.File_isEqual(left, right) == 0;
- public override bool Equals(object obj) => (obj is CXFile other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXFile other) && Equals(other);
public bool Equals(CXFile other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXIdxClientASTFile.cs b/sources/ClangSharp.Interop/Extensions/CXIdxClientASTFile.cs
index 17e409f6..2280b3b7 100644
--- a/sources/ClangSharp.Interop/Extensions/CXIdxClientASTFile.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXIdxClientASTFile.cs
@@ -21,7 +21,7 @@ public CXIdxClientASTFile(IntPtr handle)
public static bool operator !=(CXIdxClientASTFile left, CXIdxClientASTFile right) => left.Handle != right.Handle;
- public override bool Equals(object obj) => (obj is CXIdxClientASTFile other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXIdxClientASTFile other) && Equals(other);
public bool Equals(CXIdxClientASTFile other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXIdxClientContainer.cs b/sources/ClangSharp.Interop/Extensions/CXIdxClientContainer.cs
index 03c6fd72..d06146a9 100644
--- a/sources/ClangSharp.Interop/Extensions/CXIdxClientContainer.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXIdxClientContainer.cs
@@ -21,7 +21,7 @@ public CXIdxClientContainer(IntPtr handle)
public static bool operator !=(CXIdxClientContainer left, CXIdxClientContainer right) => left.Handle != right.Handle;
- public override bool Equals(object obj) => (obj is CXIdxClientContainer other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXIdxClientContainer other) && Equals(other);
public bool Equals(CXIdxClientContainer other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXIdxClientEntity.cs b/sources/ClangSharp.Interop/Extensions/CXIdxClientEntity.cs
index af03ab8a..10e6278b 100644
--- a/sources/ClangSharp.Interop/Extensions/CXIdxClientEntity.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXIdxClientEntity.cs
@@ -21,7 +21,7 @@ public CXIdxClientEntity(IntPtr handle)
public static bool operator !=(CXIdxClientEntity left, CXIdxClientEntity right) => left.Handle != right.Handle;
- public override bool Equals(object obj) => (obj is CXIdxClientEntity other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXIdxClientEntity other) && Equals(other);
public bool Equals(CXIdxClientEntity other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXIdxClientFile.cs b/sources/ClangSharp.Interop/Extensions/CXIdxClientFile.cs
index 30ee0d24..77af0e53 100644
--- a/sources/ClangSharp.Interop/Extensions/CXIdxClientFile.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXIdxClientFile.cs
@@ -21,7 +21,7 @@ public CXIdxClientFile(IntPtr handle)
public static bool operator !=(CXIdxClientFile left, CXIdxClientFile right) => left.Handle != right.Handle;
- public override bool Equals(object obj) => (obj is CXIdxClientFile other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXIdxClientFile other) && Equals(other);
public bool Equals(CXIdxClientFile other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXIndex.cs b/sources/ClangSharp.Interop/Extensions/CXIndex.cs
index 68284b36..6f23926e 100644
--- a/sources/ClangSharp.Interop/Extensions/CXIndex.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXIndex.cs
@@ -38,7 +38,7 @@ public CXGlobalOptFlags GlobalOptions
public void Dispose() => clang.disposeIndex(this);
- public override bool Equals(object obj) => (obj is CXIndex other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXIndex other) && Equals(other);
public bool Equals(CXIndex other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXIndexAction.cs b/sources/ClangSharp.Interop/Extensions/CXIndexAction.cs
index 255bd44e..75e6fa98 100644
--- a/sources/ClangSharp.Interop/Extensions/CXIndexAction.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXIndexAction.cs
@@ -32,7 +32,7 @@ public void Dispose()
}
}
- public override bool Equals(object obj) => (obj is CXIndexAction other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXIndexAction other) && Equals(other);
public bool Equals(CXIndexAction other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXModule.cs b/sources/ClangSharp.Interop/Extensions/CXModule.cs
index 72eba8a8..1b2f8925 100644
--- a/sources/ClangSharp.Interop/Extensions/CXModule.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXModule.cs
@@ -31,7 +31,7 @@ public CXModule(IntPtr handle)
public static bool operator !=(CXModule left, CXModule right) => left.Handle != right.Handle;
- public override bool Equals(object obj) => (obj is CXModule other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXModule other) && Equals(other);
public bool Equals(CXModule other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXModuleMapDescriptor.cs b/sources/ClangSharp.Interop/Extensions/CXModuleMapDescriptor.cs
index 237b9b28..bea305e2 100644
--- a/sources/ClangSharp.Interop/Extensions/CXModuleMapDescriptor.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXModuleMapDescriptor.cs
@@ -32,7 +32,7 @@ public void Dispose()
}
}
- public override bool Equals(object obj) => (obj is CXModuleMapDescriptor other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXModuleMapDescriptor other) && Equals(other);
public bool Equals(CXModuleMapDescriptor other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXPrintingPolicy.cs b/sources/ClangSharp.Interop/Extensions/CXPrintingPolicy.cs
index 80a2368c..a2414503 100644
--- a/sources/ClangSharp.Interop/Extensions/CXPrintingPolicy.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXPrintingPolicy.cs
@@ -30,7 +30,7 @@ public void Dispose()
}
}
- public override bool Equals(object obj) => (obj is CXPrintingPolicy other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXPrintingPolicy other) && Equals(other);
public bool Equals(CXPrintingPolicy other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXRemapping.cs b/sources/ClangSharp.Interop/Extensions/CXRemapping.cs
index 878e875a..bba0f1a4 100644
--- a/sources/ClangSharp.Interop/Extensions/CXRemapping.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXRemapping.cs
@@ -47,7 +47,7 @@ public void Dispose()
}
}
- public override bool Equals(object obj) => (obj is CXRemapping other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXRemapping other) && Equals(other);
public bool Equals(CXRemapping other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXSourceLocation.cs b/sources/ClangSharp.Interop/Extensions/CXSourceLocation.cs
index e5f4fec2..0feff371 100644
--- a/sources/ClangSharp.Interop/Extensions/CXSourceLocation.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXSourceLocation.cs
@@ -16,7 +16,7 @@ public unsafe partial struct CXSourceLocation : IEquatable
public static bool operator !=(CXSourceLocation left, CXSourceLocation right) => clang.equalLocations(left, right) == 0;
- public override bool Equals(object obj) => (obj is CXSourceLocation other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXSourceLocation other) && Equals(other);
public bool Equals(CXSourceLocation other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXSourceRange.cs b/sources/ClangSharp.Interop/Extensions/CXSourceRange.cs
index 43480978..cddc8587 100644
--- a/sources/ClangSharp.Interop/Extensions/CXSourceRange.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXSourceRange.cs
@@ -22,7 +22,7 @@ public partial struct CXSourceRange : IEquatable
public static CXSourceRange Create(CXSourceLocation begin, CXSourceLocation end) => clang.getRange(begin, end);
- public override bool Equals(object obj) => (obj is CXSourceRange other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXSourceRange other) && Equals(other);
public bool Equals(CXSourceRange other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXString.cs b/sources/ClangSharp.Interop/Extensions/CXString.cs
index b1c76dfa..fbd33795 100644
--- a/sources/ClangSharp.Interop/Extensions/CXString.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXString.cs
@@ -54,8 +54,7 @@ public string CString
return string.Empty;
}
- var span = new ReadOnlySpan(pCString, int.MaxValue);
- return span.Slice(0, span.IndexOf((byte)'\0')).AsString();
+ return SpanExtensions.AsString(pCString);
}
}
diff --git a/sources/ClangSharp.Interop/Extensions/CXTUResourceUsageEntry.cs b/sources/ClangSharp.Interop/Extensions/CXTUResourceUsageEntry.cs
index e3b7c657..eb00a1b8 100644
--- a/sources/ClangSharp.Interop/Extensions/CXTUResourceUsageEntry.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXTUResourceUsageEntry.cs
@@ -1,7 +1,5 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-using System;
-
namespace ClangSharp.Interop;
public unsafe partial struct CXTUResourceUsageEntry
@@ -17,8 +15,7 @@ public string Name
return string.Empty;
}
- var span = new ReadOnlySpan(pName, int.MaxValue);
- return span.Slice(0, span.IndexOf((byte)'\0')).AsString();
+ return SpanExtensions.AsString(pName);
}
}
diff --git a/sources/ClangSharp.Interop/Extensions/CXTargetInfo.cs b/sources/ClangSharp.Interop/Extensions/CXTargetInfo.cs
index 49bb1f7e..605f6f37 100644
--- a/sources/ClangSharp.Interop/Extensions/CXTargetInfo.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXTargetInfo.cs
@@ -34,7 +34,7 @@ public void Dispose()
}
}
- public override bool Equals(object obj) => (obj is CXTargetInfo other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXTargetInfo other) && Equals(other);
public bool Equals(CXTargetInfo other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXToken.cs b/sources/ClangSharp.Interop/Extensions/CXToken.cs
index 098975b7..62fcaf55 100644
--- a/sources/ClangSharp.Interop/Extensions/CXToken.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXToken.cs
@@ -26,7 +26,7 @@ public unsafe partial struct CXToken : IEquatable
(left.ptr_data != right.ptr_data);
}
- public override bool Equals(object obj) => (obj is CXSourceRange other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXSourceRange other) && Equals(other);
public bool Equals(CXToken other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/CXTranslationUnit.cs b/sources/ClangSharp.Interop/Extensions/CXTranslationUnit.cs
index 8bc668fc..7cfb391d 100644
--- a/sources/ClangSharp.Interop/Extensions/CXTranslationUnit.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXTranslationUnit.cs
@@ -148,7 +148,7 @@ public void DisposeTokens(ReadOnlySpan tokens)
}
}
- public override bool Equals(object obj) => (obj is CXTranslationUnit other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXTranslationUnit other) && Equals(other);
public bool Equals(CXTranslationUnit other) => this == other;
@@ -185,11 +185,16 @@ public ReadOnlySpan GetFileContents(CXFile file, out UIntPtr size)
public void GetInclusions(CXInclusionVisitor visitor, CXClientData clientData)
{
- var pVisitor = Marshal.GetFunctionPointerForDelegate(visitor);
- clang.getInclusions(this, pVisitor, clientData);
+ var pVisitor = (delegate* unmanaged[Cdecl])Marshal.GetFunctionPointerForDelegate(visitor);
+ GetInclusions(pVisitor, clientData);
GC.KeepAlive(visitor);
}
+ public void GetInclusions(delegate* unmanaged[Cdecl] visitor, CXClientData clientData)
+ {
+ clang.getInclusions(this, visitor, clientData);
+ }
+
public CXSourceLocation GetLocation(CXFile file, uint line, uint column) => clang.getLocation(this, file, line, column);
public CXSourceLocation GetLocationForOffset(CXFile file, uint offset) => clang.getLocationForOffset(this, file, offset);
diff --git a/sources/ClangSharp.Interop/Extensions/CXType.cs b/sources/ClangSharp.Interop/Extensions/CXType.cs
index 21d8b2a5..b2e86fc4 100644
--- a/sources/ClangSharp.Interop/Extensions/CXType.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXType.cs
@@ -145,8 +145,7 @@ public string TypeClassSpelling
Debug.Assert(CX_TypeClass.CX_TypeClass_TagFirst == CX_TypeClass.CX_TypeClass_Record);
Debug.Assert(CX_TypeClass.CX_TypeClass_TagLast == CX_TypeClass.CX_TypeClass_Enum);
- return TypeClass switch
- {
+ return TypeClass switch {
CX_TypeClass.CX_TypeClass_Invalid => "Invalid",
CX_TypeClass.CX_TypeClass_Adjusted => "Adjusted",
CX_TypeClass.CX_TypeClass_Decayed => "Decayed",
@@ -156,6 +155,8 @@ public string TypeClassSpelling
CX_TypeClass.CX_TypeClass_VariableArray => "VariableArray",
CX_TypeClass.CX_TypeClass_Atomic => "Atomic",
CX_TypeClass.CX_TypeClass_Attributed => "Attributed",
+ CX_TypeClass.CX_TypeClass_BTFTagAttributed => "BTFTagAttributed",
+ CX_TypeClass.CX_TypeClass_BitInt => "BitInt",
CX_TypeClass.CX_TypeClass_BlockPointer => "BlockPointer",
CX_TypeClass.CX_TypeClass_Builtin => "Builtin",
CX_TypeClass.CX_TypeClass_Complex => "Complex",
@@ -169,7 +170,6 @@ public string TypeClassSpelling
CX_TypeClass.CX_TypeClass_DependentTemplateSpecialization => "DependentTemplateSpecialization",
CX_TypeClass.CX_TypeClass_DependentVector => "DependentVector",
CX_TypeClass.CX_TypeClass_Elaborated => "Elaborated",
- CX_TypeClass.CX_TypeClass_BitInt => "BitInt",
CX_TypeClass.CX_TypeClass_FunctionNoProto => "FunctionNoProto",
CX_TypeClass.CX_TypeClass_FunctionProto => "FunctionProto",
CX_TypeClass.CX_TypeClass_InjectedClassName => "InjectedClassName",
@@ -198,6 +198,7 @@ public string TypeClassSpelling
CX_TypeClass.CX_TypeClass_Typedef => "Typedef",
CX_TypeClass.CX_TypeClass_UnaryTransform => "UnaryTransform",
CX_TypeClass.CX_TypeClass_UnresolvedUsing => "UnresolvedUsing",
+ CX_TypeClass.CX_TypeClass_Using => "Using",
CX_TypeClass.CX_TypeClass_Vector => "Vector",
CX_TypeClass.CX_TypeClass_ExtVector => "ExtVector",
_ => TypeClass.ToString()[13..],
@@ -219,7 +220,7 @@ public string TypeClassSpelling
public static bool operator !=(CXType left, CXType right) => clang.equalTypes(left, right) == 0;
- public override bool Equals(object obj) => (obj is CXType other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXType other) && Equals(other);
public bool Equals(CXType other) => this == other;
@@ -245,10 +246,15 @@ public long GetOffsetOf(string s)
public CXVisitorResult VisitFields(CXFieldVisitor visitor, CXClientData clientData)
{
- var pVisitor = Marshal.GetFunctionPointerForDelegate(visitor);
- var result = (CXVisitorResult)clang.Type_visitFields(this, pVisitor, clientData);
+ var pVisitor = (delegate* unmanaged[Cdecl])Marshal.GetFunctionPointerForDelegate(visitor);
+ var result = VisitFields(pVisitor, clientData);
GC.KeepAlive(visitor);
return result;
}
+
+ public CXVisitorResult VisitFields(delegate* unmanaged[Cdecl] visitor, CXClientData clientData)
+ {
+ return (CXVisitorResult)clang.Type_visitFields(this, visitor, clientData);
+ }
}
diff --git a/sources/ClangSharp.Interop/Extensions/CXUnsavedFile.cs b/sources/ClangSharp.Interop/Extensions/CXUnsavedFile.cs
index a6676daa..2a14565b 100644
--- a/sources/ClangSharp.Interop/Extensions/CXUnsavedFile.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXUnsavedFile.cs
@@ -77,8 +77,7 @@ public string FilenameString
return string.Empty;
}
- var span = new ReadOnlySpan(pFilename, int.MaxValue);
- return span.Slice(0, span.IndexOf((byte)'\0')).AsString();
+ return SpanExtensions.AsString(pFilename);
}
}
}
diff --git a/sources/ClangSharp.Interop/Extensions/CXVirtualFileOverlay.cs b/sources/ClangSharp.Interop/Extensions/CXVirtualFileOverlay.cs
index 1eb2d179..208737dd 100644
--- a/sources/ClangSharp.Interop/Extensions/CXVirtualFileOverlay.cs
+++ b/sources/ClangSharp.Interop/Extensions/CXVirtualFileOverlay.cs
@@ -23,7 +23,7 @@ public CXVirtualFileOverlay(IntPtr handle)
public static CXVirtualFileOverlay Create(uint options) => clang.VirtualFileOverlay_create(options);
- public CXErrorCode AddFileMapping(string virtualPath, string realPath)
+ public CXErrorCode AddFileMapping(string? virtualPath, string? realPath)
{
using var marshaledVirtualPath = new MarshaledString(virtualPath);
using var marshaledRealPath = new MarshaledString(realPath);
@@ -39,7 +39,7 @@ public void Dispose()
}
}
- public override bool Equals(object obj) => (obj is CXVirtualFileOverlay other) && Equals(other);
+ public override bool Equals(object? obj) => (obj is CXVirtualFileOverlay other) && Equals(other);
public bool Equals(CXVirtualFileOverlay other) => this == other;
diff --git a/sources/ClangSharp.Interop/Extensions/clang.ResolveLibrary.cs b/sources/ClangSharp.Interop/Extensions/clang.ResolveLibrary.cs
index 95212acd..47e5269e 100644
--- a/sources/ClangSharp.Interop/Extensions/clang.ResolveLibrary.cs
+++ b/sources/ClangSharp.Interop/Extensions/clang.ResolveLibrary.cs
@@ -7,11 +7,11 @@
namespace ClangSharp.Interop;
-public static unsafe partial class clang
+public static unsafe partial class @clang
{
- public static event DllImportResolver ResolveLibrary;
+ public static event DllImportResolver? ResolveLibrary;
- static clang()
+ static @clang()
{
NativeLibrary.SetDllImportResolver(Assembly.GetExecutingAssembly(), OnDllImport);
}
diff --git a/sources/ClangSharp.Interop/IndexerCallbacks.cs b/sources/ClangSharp.Interop/IndexerCallbacks.cs
index f065ff94..1c4ee8d1 100644
--- a/sources/ClangSharp.Interop/IndexerCallbacks.cs
+++ b/sources/ClangSharp.Interop/IndexerCallbacks.cs
@@ -1,35 +1,33 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
-using System;
-
namespace ClangSharp.Interop;
-public partial struct IndexerCallbacks
+public unsafe partial struct IndexerCallbacks
{
[NativeTypeName("int (*)(CXClientData, void *)")]
- public IntPtr abortQuery;
+ public delegate* unmanaged[Cdecl] abortQuery;
[NativeTypeName("void (*)(CXClientData, CXDiagnosticSet, void *)")]
- public IntPtr diagnostic;
+ public delegate* unmanaged[Cdecl] diagnostic;
[NativeTypeName("CXIdxClientFile (*)(CXClientData, CXFile, void *)")]
- public IntPtr enteredMainFile;
+ public delegate* unmanaged[Cdecl] enteredMainFile;
[NativeTypeName("CXIdxClientFile (*)(CXClientData, const CXIdxIncludedFileInfo *)")]
- public IntPtr ppIncludedFile;
+ public delegate* unmanaged[Cdecl] ppIncludedFile;
[NativeTypeName("CXIdxClientASTFile (*)(CXClientData, const CXIdxImportedASTFileInfo *)")]
- public IntPtr importedASTFile;
+ public delegate* unmanaged[Cdecl] importedASTFile;
[NativeTypeName("CXIdxClientContainer (*)(CXClientData, void *)")]
- public IntPtr startedTranslationUnit;
+ public delegate* unmanaged[Cdecl] startedTranslationUnit;
[NativeTypeName("void (*)(CXClientData, const CXIdxDeclInfo *)")]
- public IntPtr indexDeclaration;
+ public delegate* unmanaged[Cdecl] indexDeclaration;
[NativeTypeName("void (*)(CXClientData, const CXIdxEntityRefInfo *)")]
- public IntPtr indexEntityReference;
+ public delegate* unmanaged[Cdecl] indexEntityReference;
}
diff --git a/sources/ClangSharp.Interop/Internals/MarshaledString.cs b/sources/ClangSharp.Interop/Internals/MarshaledString.cs
index 77de0915..919467d6 100644
--- a/sources/ClangSharp.Interop/Internals/MarshaledString.cs
+++ b/sources/ClangSharp.Interop/Internals/MarshaledString.cs
@@ -8,7 +8,7 @@ namespace ClangSharp.Interop;
public unsafe struct MarshaledString : IDisposable
{
- public MarshaledString(string input)
+ public MarshaledString(string? input)
{
int length;
IntPtr value;
diff --git a/sources/ClangSharp.Interop/Internals/MarshaledStringArray.cs b/sources/ClangSharp.Interop/Internals/MarshaledStringArray.cs
index 6746e805..7f20c70a 100644
--- a/sources/ClangSharp.Interop/Internals/MarshaledStringArray.cs
+++ b/sources/ClangSharp.Interop/Internals/MarshaledStringArray.cs
@@ -6,7 +6,7 @@ namespace ClangSharp.Interop;
public unsafe ref struct MarshaledStringArray
{
- private MarshaledString[] _values;
+ private MarshaledString[]? _values;
public MarshaledStringArray(ReadOnlySpan inputs)
{
diff --git a/sources/ClangSharp.Interop/Internals/SpanExtensions.cs b/sources/ClangSharp.Interop/Internals/SpanExtensions.cs
index 52c6592f..a69a8c94 100644
--- a/sources/ClangSharp.Interop/Internals/SpanExtensions.cs
+++ b/sources/ClangSharp.Interop/Internals/SpanExtensions.cs
@@ -1,12 +1,24 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
using System;
+using System.Runtime.InteropServices;
using System.Text;
namespace ClangSharp.Interop;
public static unsafe class SpanExtensions
{
+ public static string AsString(sbyte* pStr)
+ {
+#if NET6_0_OR_GREATER
+ var span = MemoryMarshal.CreateReadOnlySpanFromNullTerminated((byte*)(pStr));
+#else
+ var span = new ReadOnlySpan(pStr, int.MaxValue);
+ span = span.Slice(0, span.IndexOf((byte)'\0'));
+#endif
+ return span.AsString();
+ }
+
public static string AsString(this Span self) => AsString((ReadOnlySpan)self);
public static string AsString(this ReadOnlySpan self)
diff --git a/sources/ClangSharp.Interop/CXCursorSetImpl.cs b/sources/ClangSharp.Interop/Manual/CXCursorSetImpl.cs
similarity index 94%
rename from sources/ClangSharp.Interop/CXCursorSetImpl.cs
rename to sources/ClangSharp.Interop/Manual/CXCursorSetImpl.cs
index ecdcea20..e3156661 100644
--- a/sources/ClangSharp.Interop/CXCursorSetImpl.cs
+++ b/sources/ClangSharp.Interop/Manual/CXCursorSetImpl.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXCursorVisitor.cs b/sources/ClangSharp.Interop/Manual/CXCursorVisitor.cs
similarity index 96%
rename from sources/ClangSharp.Interop/CXCursorVisitor.cs
rename to sources/ClangSharp.Interop/Manual/CXCursorVisitor.cs
index d5be796a..001e10c3 100644
--- a/sources/ClangSharp.Interop/CXCursorVisitor.cs
+++ b/sources/ClangSharp.Interop/Manual/CXCursorVisitor.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
using System.Runtime.InteropServices;
diff --git a/sources/ClangSharp.Interop/CXFieldVisitor.cs b/sources/ClangSharp.Interop/Manual/CXFieldVisitor.cs
similarity index 95%
rename from sources/ClangSharp.Interop/CXFieldVisitor.cs
rename to sources/ClangSharp.Interop/Manual/CXFieldVisitor.cs
index dc8a993c..893b1870 100644
--- a/sources/ClangSharp.Interop/CXFieldVisitor.cs
+++ b/sources/ClangSharp.Interop/Manual/CXFieldVisitor.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
using System.Runtime.InteropServices;
diff --git a/sources/ClangSharp.Interop/CXInclusionVisitor.cs b/sources/ClangSharp.Interop/Manual/CXInclusionVisitor.cs
similarity index 96%
rename from sources/ClangSharp.Interop/CXInclusionVisitor.cs
rename to sources/ClangSharp.Interop/Manual/CXInclusionVisitor.cs
index bdb71e51..01a3ea4c 100644
--- a/sources/ClangSharp.Interop/CXInclusionVisitor.cs
+++ b/sources/ClangSharp.Interop/Manual/CXInclusionVisitor.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
using System.Runtime.InteropServices;
diff --git a/sources/ClangSharp.Interop/CXModuleMapDescriptorImpl.cs b/sources/ClangSharp.Interop/Manual/CXModuleMapDescriptorImpl.cs
similarity index 94%
rename from sources/ClangSharp.Interop/CXModuleMapDescriptorImpl.cs
rename to sources/ClangSharp.Interop/Manual/CXModuleMapDescriptorImpl.cs
index 566fb33d..df18c491 100644
--- a/sources/ClangSharp.Interop/CXModuleMapDescriptorImpl.cs
+++ b/sources/ClangSharp.Interop/Manual/CXModuleMapDescriptorImpl.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXTargetInfoImpl.cs b/sources/ClangSharp.Interop/Manual/CXTargetInfoImpl.cs
similarity index 94%
rename from sources/ClangSharp.Interop/CXTargetInfoImpl.cs
rename to sources/ClangSharp.Interop/Manual/CXTargetInfoImpl.cs
index cba81fef..a027540f 100644
--- a/sources/ClangSharp.Interop/CXTargetInfoImpl.cs
+++ b/sources/ClangSharp.Interop/Manual/CXTargetInfoImpl.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXTranslationUnitImpl.cs b/sources/ClangSharp.Interop/Manual/CXTranslationUnitImpl.cs
similarity index 94%
rename from sources/ClangSharp.Interop/CXTranslationUnitImpl.cs
rename to sources/ClangSharp.Interop/Manual/CXTranslationUnitImpl.cs
index 2a505185..c6690648 100644
--- a/sources/ClangSharp.Interop/CXTranslationUnitImpl.cs
+++ b/sources/ClangSharp.Interop/Manual/CXTranslationUnitImpl.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/CXVirtualFileOverlayImpl.cs b/sources/ClangSharp.Interop/Manual/CXVirtualFileOverlayImpl.cs
similarity index 94%
rename from sources/ClangSharp.Interop/CXVirtualFileOverlayImpl.cs
rename to sources/ClangSharp.Interop/Manual/CXVirtualFileOverlayImpl.cs
index 3d5f3376..6435c586 100644
--- a/sources/ClangSharp.Interop/CXVirtualFileOverlayImpl.cs
+++ b/sources/ClangSharp.Interop/Manual/CXVirtualFileOverlayImpl.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
namespace ClangSharp.Interop;
diff --git a/sources/ClangSharp.Interop/Internals/Index.cs b/sources/ClangSharp.Interop/Shims/Index.cs
similarity index 98%
rename from sources/ClangSharp.Interop/Internals/Index.cs
rename to sources/ClangSharp.Interop/Shims/Index.cs
index bd5a75a0..c4babe8b 100644
--- a/sources/ClangSharp.Interop/Internals/Index.cs
+++ b/sources/ClangSharp.Interop/Shims/Index.cs
@@ -1,7 +1,6 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
-#if NETSTANDARD2_0
using System.Runtime.CompilerServices;
namespace System;
@@ -63,4 +62,3 @@ public int GetOffset(int length)
private string ToStringFromEnd() => '^' + Value.ToString();
}
-#endif
diff --git a/sources/ClangSharp.Interop/Shims/MemberNotNullWhenAttribute.cs b/sources/ClangSharp.Interop/Shims/MemberNotNullWhenAttribute.cs
new file mode 100644
index 00000000..e21c3fc0
--- /dev/null
+++ b/sources/ClangSharp.Interop/Shims/MemberNotNullWhenAttribute.cs
@@ -0,0 +1,23 @@
+// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
+
+namespace System.Diagnostics.CodeAnalysis;
+
+[AttributeUsage(AttributeTargets.Method | AttributeTargets.Property, Inherited = false, AllowMultiple = true)]
+internal sealed class MemberNotNullWhenAttribute : Attribute
+{
+ public MemberNotNullWhenAttribute(bool returnValue, string member)
+ {
+ ReturnValue = returnValue;
+ Members = new[] { member };
+ }
+
+ public MemberNotNullWhenAttribute(bool returnValue, params string[] members)
+ {
+ ReturnValue = returnValue;
+ Members = members;
+ }
+
+ public bool ReturnValue { get; }
+
+ public string[] Members { get; }
+}
diff --git a/sources/ClangSharp.Interop/Internals/Range.cs b/sources/ClangSharp.Interop/Shims/Range.cs
similarity index 98%
rename from sources/ClangSharp.Interop/Internals/Range.cs
rename to sources/ClangSharp.Interop/Shims/Range.cs
index 20559031..a8e9e734 100644
--- a/sources/ClangSharp.Interop/Internals/Range.cs
+++ b/sources/ClangSharp.Interop/Shims/Range.cs
@@ -1,7 +1,6 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
-#if NETSTANDARD2_0
using System.Runtime.CompilerServices;
namespace System;
@@ -51,4 +50,3 @@ value is Range r &&
: (start, end - start);
}
}
-#endif
diff --git a/sources/ClangSharp.Interop/Shims/SkipLocalsInitAttribute.cs b/sources/ClangSharp.Interop/Shims/SkipLocalsInitAttribute.cs
new file mode 100644
index 00000000..d9518d5d
--- /dev/null
+++ b/sources/ClangSharp.Interop/Shims/SkipLocalsInitAttribute.cs
@@ -0,0 +1,8 @@
+// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
+
+namespace System.Runtime.CompilerServices;
+
+[AttributeUsage(AttributeTargets.Module | AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Interface | AttributeTargets.Constructor | AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Event, Inherited = false)]
+internal sealed class SkipLocalsInitAttribute : Attribute
+{
+}
diff --git a/sources/ClangSharp.Interop/clang.cs b/sources/ClangSharp.Interop/clang.cs
index db07148f..4fd55e33 100644
--- a/sources/ClangSharp.Interop/clang.cs
+++ b/sources/ClangSharp.Interop/clang.cs
@@ -1,6 +1,6 @@
// Copyright (c) .NET Foundation and Contributors. All Rights Reserved. Licensed under the MIT License (MIT). See License.md in the repository root for more information.
-// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-14.0.0/clang/include/clang-c
+// Ported from https://github.com/llvm/llvm-project/tree/llvmorg-15.0.0/clang/include/clang-c
// Original source is Copyright (c) the LLVM Project and Contributors. Licensed under the Apache License v2.0 with LLVM Exceptions. See NOTICE.txt in the project root for license information.
using System;
@@ -8,7 +8,7 @@
namespace ClangSharp.Interop;
-public static unsafe partial class clang
+public static unsafe partial class @clang
{
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_getBuildSessionTimestamp", ExactSpelling = true)]
[return: NativeTypeName("unsigned long long")]
@@ -275,7 +275,7 @@ public static unsafe partial class clang
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_getFileContents", ExactSpelling = true)]
[return: NativeTypeName("const char *")]
- public static extern sbyte* getFileContents([NativeTypeName("CXTranslationUnit")] CXTranslationUnitImpl* tu, [NativeTypeName("CXFile")] void* file, [NativeTypeName("size_t *")] UIntPtr* size);
+ public static extern sbyte* getFileContents([NativeTypeName("CXTranslationUnit")] CXTranslationUnitImpl* tu, [NativeTypeName("CXFile")] void* file, [NativeTypeName("size_t *")] nuint* size);
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_File_isEqual", ExactSpelling = true)]
public static extern int File_isEqual([NativeTypeName("CXFile")] void* file1, [NativeTypeName("CXFile")] void* file2);
@@ -404,6 +404,7 @@ public static unsafe partial class clang
public static extern uint getDiagnosticCategory([NativeTypeName("CXDiagnostic")] void* param0);
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_getDiagnosticCategoryName", ExactSpelling = true)]
+ [Obsolete]
public static extern CXString getDiagnosticCategoryName([NativeTypeName("unsigned int")] uint Category);
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_getDiagnosticCategoryText", ExactSpelling = true)]
@@ -889,7 +890,7 @@ public static unsafe partial class clang
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_visitChildren", ExactSpelling = true)]
[return: NativeTypeName("unsigned int")]
- public static extern uint visitChildren(CXCursor parent, [NativeTypeName("CXCursorVisitor")] IntPtr visitor, [NativeTypeName("CXClientData")] void* client_data);
+ public static extern uint visitChildren(CXCursor parent, [NativeTypeName("CXCursorVisitor")] delegate* unmanaged[Cdecl] visitor, [NativeTypeName("CXClientData")] void* client_data);
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_getCursorUSR", ExactSpelling = true)]
public static extern CXString getCursorUSR(CXCursor param0);
@@ -1129,7 +1130,7 @@ public static unsafe partial class clang
public static extern void enableStackTraces();
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_executeOnThread", ExactSpelling = true)]
- public static extern void executeOnThread([NativeTypeName("void (*)(void *)")] IntPtr fn, void* user_data, [NativeTypeName("unsigned int")] uint stack_size);
+ public static extern void executeOnThread([NativeTypeName("void (*)(void *)")] delegate* unmanaged[Cdecl] fn, void* user_data, [NativeTypeName("unsigned int")] uint stack_size);
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_getCompletionChunkKind", ExactSpelling = true)]
[return: NativeTypeName("enum CXCompletionChunkKind")]
@@ -1220,7 +1221,7 @@ public static unsafe partial class clang
public static extern void toggleCrashRecovery([NativeTypeName("unsigned int")] uint isEnabled);
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_getInclusions", ExactSpelling = true)]
- public static extern void getInclusions([NativeTypeName("CXTranslationUnit")] CXTranslationUnitImpl* tu, [NativeTypeName("CXInclusionVisitor")] IntPtr visitor, [NativeTypeName("CXClientData")] void* client_data);
+ public static extern void getInclusions([NativeTypeName("CXTranslationUnit")] CXTranslationUnitImpl* tu, [NativeTypeName("CXInclusionVisitor")] delegate* unmanaged[Cdecl] visitor, [NativeTypeName("CXClientData")] void* client_data);
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_Cursor_Evaluate", ExactSpelling = true)]
[return: NativeTypeName("CXEvalResult")]
@@ -1347,7 +1348,7 @@ public static unsafe partial class clang
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_Type_visitFields", ExactSpelling = true)]
[return: NativeTypeName("unsigned int")]
- public static extern uint Type_visitFields(CXType T, [NativeTypeName("CXFieldVisitor")] IntPtr visitor, [NativeTypeName("CXClientData")] void* client_data);
+ public static extern uint Type_visitFields(CXType T, [NativeTypeName("CXFieldVisitor")] delegate* unmanaged[Cdecl] visitor, [NativeTypeName("CXClientData")] void* client_data);
[NativeTypeName("#define CINDEX_VERSION_MAJOR 0")]
public const int CINDEX_VERSION_MAJOR = 0;
@@ -1359,7 +1360,7 @@ public static unsafe partial class clang
public const int CINDEX_VERSION = (((0) * 10000) + ((62) * 1));
[NativeTypeName("#define CINDEX_VERSION_STRING CINDEX_VERSION_STRINGIZE(CINDEX_VERSION_MAJOR, CINDEX_VERSION_MINOR)")]
- public static ReadOnlySpan CINDEX_VERSION_STRING => new byte[] { 0x30, 0x2E, 0x36, 0x32, 0x00 };
+ public static ReadOnlySpan CINDEX_VERSION_STRING => "0.62"u8;
[DllImport("libclang", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clang_CXRewriter_create", ExactSpelling = true)]
[return: NativeTypeName("CXRewriter")]
diff --git a/sources/ClangSharp.Interop/clangsharp.cs b/sources/ClangSharp.Interop/clangsharp.cs
index bab80662..22ac9cf9 100644
--- a/sources/ClangSharp.Interop/clangsharp.cs
+++ b/sources/ClangSharp.Interop/clangsharp.cs
@@ -6,7 +6,7 @@
namespace ClangSharp.Interop;
-public static partial class clangsharp
+public static partial class @clangsharp
{
[DllImport("libClangSharp", CallingConvention = CallingConvention.Cdecl, EntryPoint = "clangsharp_Cursor_getArgument", ExactSpelling = true)]
public static extern CXCursor Cursor_getArgument(CXCursor C, [NativeTypeName("unsigned int")] uint i);
diff --git a/sources/ClangSharp.PInvokeGenerator/Abstractions/FieldDesc.cs b/sources/ClangSharp.PInvokeGenerator/Abstractions/FieldDesc.cs
index 15ccf154..a10105ee 100644
--- a/sources/ClangSharp.PInvokeGenerator/Abstractions/FieldDesc.cs
+++ b/sources/ClangSharp.PInvokeGenerator/Abstractions/FieldDesc.cs
@@ -8,7 +8,7 @@ namespace ClangSharp.Abstractions;
internal struct FieldDesc
{
public AccessSpecifier AccessSpecifier { get; set; }
- public string NativeTypeName { get; set; }
+ public string? NativeTypeName { get; set; }
public string EscapedName { get; set; }
public string ParentName { get; set; }
public int? Offset { get; set; }
diff --git a/sources/ClangSharp.PInvokeGenerator/Abstractions/FunctionOrDelegateDesc.cs b/sources/ClangSharp.PInvokeGenerator/Abstractions/FunctionOrDelegateDesc.cs
index 8d0dadcf..5bdbf137 100644
--- a/sources/ClangSharp.PInvokeGenerator/Abstractions/FunctionOrDelegateDesc.cs
+++ b/sources/ClangSharp.PInvokeGenerator/Abstractions/FunctionOrDelegateDesc.cs
@@ -13,7 +13,7 @@ internal struct FunctionOrDelegateDesc
public string EscapedName { get; set; }
public string EntryPoint { get; set; }
public string ParentName { get; set; }
- public string LibraryPath { get; set; }
+ public string? LibraryPath { get; set; }
public string ReturnType { get; set; }
public CallingConvention CallingConvention { get; set; }
public FunctionOrDelegateFlags Flags { get; set; }
@@ -212,7 +212,7 @@ public bool? IsStatic
// true - static, false - not static, null - infer
true => Flags | (FunctionOrDelegateFlags.IsStatic & ~FunctionOrDelegateFlags.IsNotStatic),
false => (Flags & ~FunctionOrDelegateFlags.IsStatic) | FunctionOrDelegateFlags.IsNotStatic,
- null => Flags & ~FunctionOrDelegateFlags.IsStatic & ~FunctionOrDelegateFlags.IsNotStatic
+ null => Flags & ~FunctionOrDelegateFlags.IsStatic & ~FunctionOrDelegateFlags.IsNotStatic,
};
}
}
diff --git a/sources/ClangSharp.PInvokeGenerator/Abstractions/IOutputBuilder.Visit.cs b/sources/ClangSharp.PInvokeGenerator/Abstractions/IOutputBuilder.Visit.cs
index 7a71c669..97275886 100644
--- a/sources/ClangSharp.PInvokeGenerator/Abstractions/IOutputBuilder.Visit.cs
+++ b/sources/ClangSharp.PInvokeGenerator/Abstractions/IOutputBuilder.Visit.cs
@@ -9,7 +9,7 @@ internal partial interface IOutputBuilder
void WriteDivider(bool force = false);
void SuppressDivider();
- void WriteCustomAttribute(string attribute, Action callback = null);
+ void WriteCustomAttribute(string attribute, Action? callback = null);
void WriteIid(string name, Guid value);
void EmitUsingDirective(string directive);
}
diff --git a/sources/ClangSharp.PInvokeGenerator/Abstractions/IOutputBuilder.VisitDecl.cs b/sources/ClangSharp.PInvokeGenerator/Abstractions/IOutputBuilder.VisitDecl.cs
index 0c86e849..74c024f1 100644
--- a/sources/ClangSharp.PInvokeGenerator/Abstractions/IOutputBuilder.VisitDecl.cs
+++ b/sources/ClangSharp.PInvokeGenerator/Abstractions/IOutputBuilder.VisitDecl.cs
@@ -48,7 +48,7 @@ internal partial interface IOutputBuilder
void EndFunctionOrDelegate(in FunctionOrDelegateDesc info);
void BeginStruct(in StructDesc info);
- void BeginMarkerInterface(string[] baseTypeNames);
+ void BeginMarkerInterface(string[]? baseTypeNames);
void EndMarkerInterface();
void BeginExplicitVtbl();
void EndExplicitVtbl();
diff --git a/sources/ClangSharp.PInvokeGenerator/Abstractions/ParameterDesc.cs b/sources/ClangSharp.PInvokeGenerator/Abstractions/ParameterDesc.cs
index 37b62be6..0e623cb9 100644
--- a/sources/ClangSharp.PInvokeGenerator/Abstractions/ParameterDesc.cs
+++ b/sources/ClangSharp.PInvokeGenerator/Abstractions/ParameterDesc.cs
@@ -11,7 +11,7 @@ internal struct ParameterDesc
public string Type { get; set; }
public string Name { get; set; }
public string NativeTypeName { get; set; }
- public IEnumerable CppAttributes { get; set; }
+ public IEnumerable? CppAttributes { get; set; }
public Action