Skip to content

C#: Re-generate .NET 9 Runtime models. #19480

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions csharp/ql/lib/change-notes/2025-05-14-dotnet-models.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
category: minorAnalysis
---
* The generated Models as Data (MaD) models for .NET 9 Runtime have been updated and are now more precise (due to a recent model generator improvement).
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ extensions:
- ["ILLink.Shared.DataFlow", "ValueSet<TValue>", False, "DeepCopy", "()", "", "Argument[this]", "ReturnValue", "value", "df-generated"]
- ["ILLink.Shared.DataFlow", "ValueSet<TValue>", False, "GetKnownValues", "()", "", "Argument[this].SyntheticField[ILLink.Shared.DataFlow.ValueSet`1._values]", "ReturnValue.SyntheticField[ILLink.Shared.DataFlow.ValueSet`1+Enumerable._values]", "value", "dfc-generated"]
- ["ILLink.Shared.DataFlow", "ValueSet<TValue>", False, "ValueSet", "(TValue)", "", "Argument[0]", "Argument[this].SyntheticField[ILLink.Shared.DataFlow.ValueSet`1._values]", "value", "dfc-generated"]
- ["ILLink.Shared.DataFlow", "ValueSetLattice<TValue>", False, "Meet", "(ILLink.Shared.DataFlow.ValueSet<TValue>,ILLink.Shared.DataFlow.ValueSet<TValue>)", "", "Argument[0]", "ReturnValue", "taint", "df-generated"]
- ["ILLink.Shared.DataFlow", "ValueSetLattice<TValue>", False, "Meet", "(ILLink.Shared.DataFlow.ValueSet<TValue>,ILLink.Shared.DataFlow.ValueSet<TValue>)", "", "Argument[1]", "ReturnValue", "taint", "df-generated"]
- ["ILLink.Shared.DataFlow", "ValueSetLattice<TValue>", False, "Meet", "(ILLink.Shared.DataFlow.ValueSet<TValue>,ILLink.Shared.DataFlow.ValueSet<TValue>)", "", "Argument[0]", "ReturnValue", "value", "df-generated"]
- ["ILLink.Shared.DataFlow", "ValueSetLattice<TValue>", False, "Meet", "(ILLink.Shared.DataFlow.ValueSet<TValue>,ILLink.Shared.DataFlow.ValueSet<TValue>)", "", "Argument[1]", "ReturnValue", "value", "df-generated"]
- addsTo:
pack: codeql/csharp-all
extensible: neutralModel
Expand Down
17 changes: 9 additions & 8 deletions csharp/ql/lib/ext/generated/Internal.TypeSystem.model.yml

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ extensions:
- ["Microsoft.Extensions.Configuration", "ChainedConfigurationProvider", False, "ChainedConfigurationProvider", "(Microsoft.Extensions.Configuration.ChainedConfigurationSource)", "", "Argument[0].Property[Microsoft.Extensions.Configuration.ChainedConfigurationSource.Configuration]", "Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ChainedConfigurationProvider._config]", "value", "dfc-generated"]
- ["Microsoft.Extensions.Configuration", "ChainedConfigurationProvider", False, "TryGet", "(System.String,System.String)", "", "Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ChainedConfigurationProvider._config]", "Argument[1]", "taint", "dfc-generated"]
- ["Microsoft.Extensions.Configuration", "ChainedConfigurationProvider", False, "get_Configuration", "()", "", "Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ChainedConfigurationProvider._config]", "ReturnValue", "value", "dfc-generated"]
- ["Microsoft.Extensions.Configuration", "ConfigurationBinder", False, "Get", "(Microsoft.Extensions.Configuration.IConfiguration,System.Type)", "", "Argument[0]", "ReturnValue", "taint", "df-generated"]
- ["Microsoft.Extensions.Configuration", "ConfigurationBinder", False, "Get<T>", "(Microsoft.Extensions.Configuration.IConfiguration)", "", "Argument[0]", "ReturnValue", "taint", "df-generated"]
- ["Microsoft.Extensions.Configuration", "ConfigurationBinder", False, "Get", "(Microsoft.Extensions.Configuration.IConfiguration,System.Type)", "", "Argument[0]", "ReturnValue", "value", "df-generated"]
- ["Microsoft.Extensions.Configuration", "ConfigurationBinder", False, "Get<T>", "(Microsoft.Extensions.Configuration.IConfiguration)", "", "Argument[0]", "ReturnValue", "value", "df-generated"]
- ["Microsoft.Extensions.Configuration", "ConfigurationBinder", False, "GetValue", "(Microsoft.Extensions.Configuration.IConfiguration,System.Type,System.String,System.Object)", "", "Argument[3]", "ReturnValue", "value", "dfc-generated"]
- ["Microsoft.Extensions.Configuration", "ConfigurationBinder", False, "GetValue<T>", "(Microsoft.Extensions.Configuration.IConfiguration,System.String,T)", "", "Argument[2]", "ReturnValue", "value", "dfc-generated"]
- ["Microsoft.Extensions.Configuration", "ConfigurationBuilder", False, "Add", "(Microsoft.Extensions.Configuration.IConfigurationSource)", "", "Argument[0]", "Argument[this].SyntheticField[Microsoft.Extensions.Configuration.ConfigurationBuilder._sources].Element", "value", "dfc-generated"]
Expand Down
4 changes: 2 additions & 2 deletions csharp/ql/lib/ext/generated/Mono.Linker.Steps.model.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,11 +54,11 @@ extensions:
- ["Mono.Linker.Steps", "MarkStep", True, "MarkInstruction", "(Mono.Cecil.Cil.Instruction,Mono.Cecil.MethodDefinition,System.Boolean,Mono.Linker.MessageOrigin)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["Mono.Linker.Steps", "MarkStep", True, "MarkInterfaceImplementation", "(Mono.Cecil.InterfaceImplementation,Mono.Linker.MessageOrigin,System.Nullable<Mono.Linker.DependencyInfo>)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["Mono.Linker.Steps", "MarkStep", True, "MarkMethod", "(Mono.Cecil.MethodReference,Mono.Linker.DependencyInfo,Mono.Linker.MessageOrigin)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["Mono.Linker.Steps", "MarkStep", True, "MarkMethod", "(Mono.Cecil.MethodReference,Mono.Linker.DependencyInfo,Mono.Linker.MessageOrigin)", "", "Argument[0]", "ReturnValue", "taint", "df-generated"]
- ["Mono.Linker.Steps", "MarkStep", True, "MarkMethod", "(Mono.Cecil.MethodReference,Mono.Linker.DependencyInfo,Mono.Linker.MessageOrigin)", "", "Argument[0]", "ReturnValue", "value", "df-generated"]
- ["Mono.Linker.Steps", "MarkStep", True, "MarkRequirementsForInstantiatedTypes", "(Mono.Cecil.TypeDefinition)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["Mono.Linker.Steps", "MarkStep", True, "MarkSecurityAttribute", "(Mono.Cecil.SecurityAttribute,Mono.Linker.DependencyInfo,Mono.Linker.MessageOrigin)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["Mono.Linker.Steps", "MarkStep", True, "MarkType", "(Mono.Cecil.TypeReference,Mono.Linker.DependencyInfo,Mono.Linker.MessageOrigin)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["Mono.Linker.Steps", "MarkStep", True, "MarkType", "(Mono.Cecil.TypeReference,Mono.Linker.DependencyInfo,Mono.Linker.MessageOrigin)", "", "Argument[0]", "ReturnValue", "taint", "df-generated"]
- ["Mono.Linker.Steps", "MarkStep", True, "MarkType", "(Mono.Cecil.TypeReference,Mono.Linker.DependencyInfo,Mono.Linker.MessageOrigin)", "", "Argument[0]", "ReturnValue", "value", "df-generated"]
- ["Mono.Linker.Steps", "MarkStep", True, "MarkTypeVisibleToReflection", "(Mono.Cecil.TypeReference,Mono.Linker.DependencyInfo,Mono.Linker.MessageOrigin)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["Mono.Linker.Steps", "MarkStep", True, "MarkUserDependency", "(Mono.Cecil.IMemberDefinition,Mono.Cecil.CustomAttribute,Mono.Linker.MessageOrigin)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["Mono.Linker.Steps", "MarkStep", True, "Process", "(Mono.Linker.LinkContext)", "", "Argument[0]", "Argument[this].SyntheticField[Mono.Linker.Steps.MarkStep._context]", "value", "dfc-generated"]
Expand Down
2 changes: 1 addition & 1 deletion csharp/ql/lib/ext/generated/Mono.Linker.model.yml
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ extensions:
- ["Mono.Linker", "UnconditionalSuppressMessageAttributeState+Suppression", False, "Suppression", "(Mono.Linker.SuppressMessageInfo,Mono.Cecil.CustomAttribute,Mono.Cecil.ICustomAttributeProvider)", "", "Argument[1]", "Argument[this].Property[Mono.Linker.UnconditionalSuppressMessageAttributeState+Suppression.OriginAttribute]", "value", "dfc-generated"]
- ["Mono.Linker", "UnconditionalSuppressMessageAttributeState+Suppression", False, "Suppression", "(Mono.Linker.SuppressMessageInfo,Mono.Cecil.CustomAttribute,Mono.Cecil.ICustomAttributeProvider)", "", "Argument[2]", "Argument[this].Property[Mono.Linker.UnconditionalSuppressMessageAttributeState+Suppression.Provider]", "value", "dfc-generated"]
- ["Mono.Linker", "UnconditionalSuppressMessageAttributeState", False, "GatherSuppressions", "(Mono.Cecil.ICustomAttributeProvider)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["Mono.Linker", "UnconditionalSuppressMessageAttributeState", False, "GetModuleFromProvider", "(Mono.Cecil.ICustomAttributeProvider)", "", "Argument[0]", "ReturnValue", "taint", "df-generated"]
- ["Mono.Linker", "UnconditionalSuppressMessageAttributeState", False, "GetModuleFromProvider", "(Mono.Cecil.ICustomAttributeProvider)", "", "Argument[0]", "ReturnValue", "value", "df-generated"]
- ["Mono.Linker", "UnconditionalSuppressMessageAttributeState", False, "IsSuppressed", "(System.Int32,Mono.Linker.MessageOrigin,Mono.Linker.SuppressMessageInfo)", "", "Argument[1]", "Argument[this]", "taint", "df-generated"]
- ["Mono.Linker", "UnconditionalSuppressMessageAttributeState", False, "UnconditionalSuppressMessageAttributeState", "(Mono.Linker.LinkContext)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["Mono.Linker", "UnintializedContextFactory", True, "CreateAnnotationStore", "(Mono.Linker.LinkContext)", "", "Argument[0]", "ReturnValue", "taint", "df-generated"]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ extensions:
pack: codeql/csharp-all
extensible: summaryModel
data:
- ["System.Collections.Frozen", "FrozenDictionary", False, "ToFrozenDictionary<TKey,TValue>", "(System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>>,System.Collections.Generic.IEqualityComparer<TKey>)", "", "Argument[0].Element", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Frozen", "FrozenDictionary", False, "ToFrozenDictionary<TKey,TValue>", "(System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>>,System.Collections.Generic.IEqualityComparer<TKey>)", "", "Argument[0]", "ReturnValue", "value", "df-generated"]
- ["System.Collections.Frozen", "FrozenDictionary<TKey,TValue>+AlternateLookup<TAlternateKey>", False, "ContainsKey", "(TAlternateKey)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["System.Collections.Frozen", "FrozenDictionary<TKey,TValue>+AlternateLookup<TAlternateKey>", False, "TryGetValue", "(TAlternateKey,TValue)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["System.Collections.Frozen", "FrozenDictionary<TKey,TValue>+AlternateLookup<TAlternateKey>", False, "get_Item", "(TAlternateKey)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
Expand All @@ -16,7 +16,7 @@ extensions:
- ["System.Collections.Frozen", "FrozenDictionary<TKey,TValue>", False, "get_Values", "()", "", "Argument[this]", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Frozen", "FrozenSet", False, "Create<T>", "(System.Collections.Generic.IEqualityComparer<T>,System.ReadOnlySpan<T>)", "", "Argument[1]", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Frozen", "FrozenSet", False, "Create<T>", "(System.ReadOnlySpan<T>)", "", "Argument[0]", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Frozen", "FrozenSet", False, "ToFrozenSet<T>", "(System.Collections.Generic.IEnumerable<T>,System.Collections.Generic.IEqualityComparer<T>)", "", "Argument[0].Element", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Frozen", "FrozenSet", False, "ToFrozenSet<T>", "(System.Collections.Generic.IEnumerable<T>,System.Collections.Generic.IEqualityComparer<T>)", "", "Argument[0]", "ReturnValue", "value", "df-generated"]
- ["System.Collections.Frozen", "FrozenSet<T>+AlternateLookup<TAlternate>", False, "Contains", "(TAlternate)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["System.Collections.Frozen", "FrozenSet<T>+AlternateLookup<TAlternate>", False, "TryGetValue", "(TAlternate,T)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["System.Collections.Frozen", "FrozenSet<T>+AlternateLookup<TAlternate>", False, "TryGetValue", "(TAlternate,T)", "", "Argument[this]", "Argument[1]", "taint", "df-generated"]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,12 @@ extensions:
- ["System.Collections.Generic", "KeyValuePair<TKey,TValue>", False, "get_Value", "()", "", "Argument[this]", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedList<T>+Enumerator", False, "get_Current", "()", "", "Argument[this].Property[System.Collections.Generic.LinkedList`1+Enumerator.Current]", "ReturnValue", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>+Enumerator", False, "get_Current", "()", "", "Argument[this]", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddAfter", "(System.Collections.Generic.LinkedListNode<T>,System.Collections.Generic.LinkedListNode<T>)", "", "Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.next].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev]", "Argument[1].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev]", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddAfter", "(System.Collections.Generic.LinkedListNode<T>,System.Collections.Generic.LinkedListNode<T>)", "", "Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.next]", "Argument[1].SyntheticField[System.Collections.Generic.LinkedListNode`1.next]", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddAfter", "(System.Collections.Generic.LinkedListNode<T>,System.Collections.Generic.LinkedListNode<T>)", "", "Argument[1]", "Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.next].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev]", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddAfter", "(System.Collections.Generic.LinkedListNode<T>,T)", "", "Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.next].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev]", "ReturnValue.SyntheticField[System.Collections.Generic.LinkedListNode`1.prev]", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddAfter", "(System.Collections.Generic.LinkedListNode<T>,T)", "", "Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.next]", "ReturnValue.SyntheticField[System.Collections.Generic.LinkedListNode`1.next]", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddBefore", "(System.Collections.Generic.LinkedListNode<T>,System.Collections.Generic.LinkedListNode<T>)", "", "Argument[1]", "Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev]", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddBefore", "(System.Collections.Generic.LinkedListNode<T>,System.Collections.Generic.LinkedListNode<T>)", "", "Argument[1]", "Argument[this].SyntheticField[System.Collections.Generic.LinkedList`1.head]", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddBefore", "(System.Collections.Generic.LinkedListNode<T>,T)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddBefore", "(System.Collections.Generic.LinkedListNode<T>,T)", "", "Argument[0]", "ReturnValue", "taint", "df-generated"]
Expand All @@ -60,15 +64,17 @@ extensions:
- ["System.Collections.Generic", "LinkedList<T>", False, "AddFirst", "(T)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddFirst", "(T)", "", "Argument[0]", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddFirst", "(T)", "", "Argument[this]", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddLast", "(System.Collections.Generic.LinkedListNode<T>)", "", "Argument[this].SyntheticField[System.Collections.Generic.LinkedList`1.head].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev]", "Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev]", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddLast", "(System.Collections.Generic.LinkedListNode<T>)", "", "Argument[this].SyntheticField[System.Collections.Generic.LinkedList`1.head]", "Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.next]", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddLast", "(T)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddLast", "(T)", "", "Argument[0]", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "AddLast", "(T)", "", "Argument[this]", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "LinkedList", "(System.Collections.Generic.IEnumerable<T>)", "", "Argument[0].Element", "Argument[this]", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "LinkedList", "(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "Remove", "(System.Collections.Generic.LinkedListNode<T>)", "", "Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.next]", "Argument[this].SyntheticField[System.Collections.Generic.LinkedList`1.head]", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "Remove", "(System.Collections.Generic.LinkedListNode<T>)", "", "Argument[0].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev]", "Argument[this].SyntheticField[System.Collections.Generic.LinkedList`1.head].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev]", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "get_First", "()", "", "Argument[this].SyntheticField[System.Collections.Generic.LinkedList`1.head]", "ReturnValue", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "get_Last", "()", "", "Argument[this]", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedList<T>", False, "get_Last", "()", "", "Argument[this].SyntheticField[System.Collections.Generic.LinkedList`1.head].SyntheticField[System.Collections.Generic.LinkedListNode`1.prev]", "ReturnValue", "value", "dfc-generated"]
- ["System.Collections.Generic", "LinkedListNode<T>", False, "LinkedListNode", "(T)", "", "Argument[0]", "Argument[this]", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedListNode<T>", False, "get_List", "()", "", "Argument[this]", "ReturnValue", "taint", "df-generated"]
- ["System.Collections.Generic", "LinkedListNode<T>", False, "get_Next", "()", "", "Argument[this]", "ReturnValue", "taint", "df-generated"]
Expand Down
Loading