mirror of
https://github.com/github/codeql.git
synced 2025-12-16 16:53:25 +01:00
Merge branch 'main' into redsun82/rust-qltest-proc-macro
This commit is contained in:
4
cpp/ql/lib/change-notes/2025-06-17-arraytype-typedefs.md
Normal file
4
cpp/ql/lib/change-notes/2025-06-17-arraytype-typedefs.md
Normal file
@@ -0,0 +1,4 @@
|
||||
---
|
||||
category: fix
|
||||
---
|
||||
* `resolveTypedefs` now properly resolves typedefs for `ArrayType`s.
|
||||
@@ -1589,6 +1589,11 @@ class ArrayType extends DerivedType {
|
||||
* Holds if this array is a variable-length array (VLA).
|
||||
*/
|
||||
predicate isVla() { type_is_vla(underlyingElement(this)) }
|
||||
|
||||
override Type resolveTypedefs() {
|
||||
result.(ArrayType).getBaseType() = this.getBaseType().resolveTypedefs() and
|
||||
result.(ArrayType).getArraySize() = this.getArraySize()
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
typedef int int_t;
|
||||
int_t g1[10];
|
||||
int_t g2[2][4];
|
||||
|
||||
typedef float float_t;
|
||||
float_t arr1[5];
|
||||
float_t (*a_pointer)[10];
|
||||
@@ -0,0 +1,5 @@
|
||||
| file://:0:0:0:0 | float_t[5] | file://:0:0:0:0 | float[5] | ArrayTypedefs.cpp:6:9:6:12 | definition of arr1 |
|
||||
| file://:0:0:0:0 | float_t[10] | file://:0:0:0:0 | float[10] | ArrayTypedefs.cpp:7:11:7:19 | definition of a_pointer |
|
||||
| file://:0:0:0:0 | int_t[2][4] | file://:0:0:0:0 | int[2][4] | ArrayTypedefs.cpp:3:7:3:8 | definition of g2 |
|
||||
| file://:0:0:0:0 | int_t[4] | file://:0:0:0:0 | int[4] | ArrayTypedefs.cpp:3:7:3:8 | definition of g2 |
|
||||
| file://:0:0:0:0 | int_t[10] | file://:0:0:0:0 | int[10] | ArrayTypedefs.cpp:2:7:2:8 | definition of g1 |
|
||||
@@ -0,0 +1,4 @@
|
||||
import cpp
|
||||
|
||||
from ArrayType type
|
||||
select type, type.resolveTypedefs(), type.getATypeNameUse()
|
||||
@@ -1,20 +1,72 @@
|
||||
ql/csharp/ql/src/API Abuse/CallToGCCollect.ql
|
||||
ql/csharp/ql/src/API Abuse/CallToObsoleteMethod.ql
|
||||
ql/csharp/ql/src/API Abuse/ClassImplementsICloneable.ql
|
||||
ql/csharp/ql/src/API Abuse/FormatInvalid.ql
|
||||
ql/csharp/ql/src/API Abuse/NoDisposeCallOnLocalIDisposable.ql
|
||||
ql/csharp/ql/src/API Abuse/NullArgumentToEquals.ql
|
||||
ql/csharp/ql/src/ASP/BlockCodeResponseWrite.ql
|
||||
ql/csharp/ql/src/Bad Practices/CallsUnmanagedCode.ql
|
||||
ql/csharp/ql/src/Bad Practices/CatchOfNullReferenceException.ql
|
||||
ql/csharp/ql/src/Bad Practices/Control-Flow/ConstantCondition.ql
|
||||
ql/csharp/ql/src/Bad Practices/Declarations/LocalScopeVariableShadowsMember.ql
|
||||
ql/csharp/ql/src/Bad Practices/EmptyCatchBlock.ql
|
||||
ql/csharp/ql/src/Bad Practices/Implementation Hiding/ExposeRepresentation.ql
|
||||
ql/csharp/ql/src/Bad Practices/Naming Conventions/FieldMasksSuperField.ql
|
||||
ql/csharp/ql/src/Bad Practices/Naming Conventions/SameNameAsSuper.ql
|
||||
ql/csharp/ql/src/Bad Practices/PathCombine.ql
|
||||
ql/csharp/ql/src/Bad Practices/UnmanagedCodeCheck.ql
|
||||
ql/csharp/ql/src/CSI/CompareIdenticalValues.ql
|
||||
ql/csharp/ql/src/CSI/NullAlways.ql
|
||||
ql/csharp/ql/src/CSI/NullMaybe.ql
|
||||
ql/csharp/ql/src/Concurrency/FutileSyncOnField.ql
|
||||
ql/csharp/ql/src/Concurrency/LockOrder.ql
|
||||
ql/csharp/ql/src/Concurrency/LockThis.ql
|
||||
ql/csharp/ql/src/Concurrency/LockedWait.ql
|
||||
ql/csharp/ql/src/Dead Code/DeadStoreOfLocal.ql
|
||||
ql/csharp/ql/src/Documentation/XmldocMissingSummary.ql
|
||||
ql/csharp/ql/src/Language Abuse/CastThisToTypeParameter.ql
|
||||
ql/csharp/ql/src/Language Abuse/CatchOfGenericException.ql
|
||||
ql/csharp/ql/src/Language Abuse/DubiousDowncastOfThis.ql
|
||||
ql/csharp/ql/src/Language Abuse/DubiousTypeTestOfThis.ql
|
||||
ql/csharp/ql/src/Language Abuse/MissedReadonlyOpportunity.ql
|
||||
ql/csharp/ql/src/Language Abuse/MissedTernaryOpportunity.ql
|
||||
ql/csharp/ql/src/Language Abuse/MissedUsingOpportunity.ql
|
||||
ql/csharp/ql/src/Language Abuse/NestedIf.ql
|
||||
ql/csharp/ql/src/Language Abuse/RethrowException.ql
|
||||
ql/csharp/ql/src/Language Abuse/SimplifyBoolExpr.ql
|
||||
ql/csharp/ql/src/Language Abuse/UnusedPropertyValue.ql
|
||||
ql/csharp/ql/src/Likely Bugs/Collections/ContainerLengthCmpOffByOne.ql
|
||||
ql/csharp/ql/src/Likely Bugs/Collections/ContainerSizeCmpZero.ql
|
||||
ql/csharp/ql/src/Likely Bugs/Collections/ReadOnlyContainer.ql
|
||||
ql/csharp/ql/src/Likely Bugs/Collections/WriteOnlyContainer.ql
|
||||
ql/csharp/ql/src/Likely Bugs/ConstantComparison.ql
|
||||
ql/csharp/ql/src/Likely Bugs/DangerousNonShortCircuitLogic.ql
|
||||
ql/csharp/ql/src/Likely Bugs/EqualityCheckOnFloats.ql
|
||||
ql/csharp/ql/src/Likely Bugs/EqualsArray.ql
|
||||
ql/csharp/ql/src/Likely Bugs/HashedButNoHash.ql
|
||||
ql/csharp/ql/src/Likely Bugs/ImpossibleArrayCast.ql
|
||||
ql/csharp/ql/src/Likely Bugs/IncomparableEquals.ql
|
||||
ql/csharp/ql/src/Likely Bugs/NestedLoopsSameVariable.ql
|
||||
ql/csharp/ql/src/Likely Bugs/PossibleLossOfPrecision.ql
|
||||
ql/csharp/ql/src/Likely Bugs/RecursiveEquals.ql
|
||||
ql/csharp/ql/src/Likely Bugs/ReferenceEqualsOnValueTypes.ql
|
||||
ql/csharp/ql/src/Likely Bugs/SelfAssignment.ql
|
||||
ql/csharp/ql/src/Likely Bugs/Statements/EmptyBlock.ql
|
||||
ql/csharp/ql/src/Likely Bugs/Statements/EmptyLockStatement.ql
|
||||
ql/csharp/ql/src/Likely Bugs/StaticFieldWrittenByInstance.ql
|
||||
ql/csharp/ql/src/Likely Bugs/StringBuilderCharInit.ql
|
||||
ql/csharp/ql/src/Likely Bugs/UncheckedCastInEquals.ql
|
||||
ql/csharp/ql/src/Linq/MissedAllOpportunity.ql
|
||||
ql/csharp/ql/src/Linq/MissedCastOpportunity.ql
|
||||
ql/csharp/ql/src/Linq/MissedOfTypeOpportunity.ql
|
||||
ql/csharp/ql/src/Linq/MissedSelectOpportunity.ql
|
||||
ql/csharp/ql/src/Linq/MissedWhereOpportunity.ql
|
||||
ql/csharp/ql/src/Linq/RedundantSelect.ql
|
||||
ql/csharp/ql/src/Performance/StringBuilderInLoop.ql
|
||||
ql/csharp/ql/src/Performance/StringConcatenationInLoop.ql
|
||||
ql/csharp/ql/src/Performance/UseTryGetValue.ql
|
||||
ql/csharp/ql/src/Useless code/DefaultToString.ql
|
||||
ql/csharp/ql/src/Useless code/FutileConditional.ql
|
||||
ql/csharp/ql/src/Useless code/IntGetHashCode.ql
|
||||
ql/csharp/ql/src/Useless code/RedundantToStringCall.ql
|
||||
ql/csharp/ql/src/Useless code/UnusedLabel.ql
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision very-high
|
||||
* @id cs/call-to-gc
|
||||
* @tags efficiency
|
||||
* maintainability
|
||||
* quality
|
||||
* @tags quality
|
||||
* reliability
|
||||
* performance
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,8 +6,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision very-high
|
||||
* @id cs/call-to-obsolete-method
|
||||
* @tags changeability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* changeability
|
||||
* external/cwe/cwe-477
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision very-high
|
||||
* @id cs/class-implements-icloneable
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/invalid-string-formatting
|
||||
* @tags reliability
|
||||
* maintainability
|
||||
* quality
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,9 +6,10 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/local-not-disposed
|
||||
* @tags efficiency
|
||||
* maintainability
|
||||
* quality
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* efficiency
|
||||
* external/cwe/cwe-404
|
||||
* external/cwe/cwe-459
|
||||
* external/cwe/cwe-460
|
||||
|
||||
@@ -6,7 +6,8 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/null-argument-to-equals
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
|
||||
@@ -5,7 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/asp/response-write
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* frameworks/asp.net
|
||||
*/
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
* @precision high
|
||||
* @id cs/coupled-types
|
||||
* @tags maintainability
|
||||
* complexity
|
||||
* modularity
|
||||
*/
|
||||
|
||||
|
||||
@@ -5,8 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/call-to-unmanaged-code
|
||||
* @tags reliability
|
||||
* maintainability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,8 +5,10 @@
|
||||
* @problem.severity warning
|
||||
* @precision very-high
|
||||
* @id cs/catch-nullreferenceexception
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* error-handling
|
||||
* external/cwe/cwe-395
|
||||
*/
|
||||
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision very-high
|
||||
* @id cs/constant-condition
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* quality
|
||||
* external/cwe/cwe-835
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,7 +6,8 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/local-shadows-member
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,8 +6,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision very-high
|
||||
* @id cs/too-many-ref-parameters
|
||||
* @tags testability
|
||||
* @tags maintainability
|
||||
* readability
|
||||
* testability
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,8 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision very-high
|
||||
* @id cs/empty-catch-block
|
||||
* @tags reliability
|
||||
* readability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* error-handling
|
||||
* exceptions
|
||||
* external/cwe/cwe-390
|
||||
* external/cwe/cwe-391
|
||||
|
||||
@@ -6,7 +6,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/expose-implementation
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* external/cwe/cwe-485
|
||||
*/
|
||||
|
||||
|
||||
@@ -7,7 +7,8 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/field-masks-base-field
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* naming
|
||||
*/
|
||||
|
||||
@@ -5,7 +5,8 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/class-name-matches-base-class
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* naming
|
||||
*/
|
||||
|
||||
@@ -5,7 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision very-high
|
||||
* @id cs/path-combine
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,8 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/unmanaged-code
|
||||
* @tags reliability
|
||||
* maintainability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -7,7 +7,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/comparison-of-identical-expressions
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,11 +5,11 @@
|
||||
* @problem.severity error
|
||||
* @precision very-high
|
||||
* @id cs/dereferenced-value-is-always-null
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* exceptions
|
||||
* external/cwe/cwe-476
|
||||
* quality
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/dereferenced-value-may-be-null
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* exceptions
|
||||
* external/cwe/cwe-476
|
||||
* quality
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -8,8 +8,8 @@
|
||||
* @precision high
|
||||
* @id cs/complex-block
|
||||
* @tags maintainability
|
||||
* testability
|
||||
* complexity
|
||||
* testability
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,8 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/complex-condition
|
||||
* @tags testability
|
||||
* @tags maintainability
|
||||
* readability
|
||||
* testability
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,9 +6,10 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/unsafe-sync-on-field
|
||||
* @tags reliability
|
||||
* correctness
|
||||
* @tags quality
|
||||
* reliability
|
||||
* concurrency
|
||||
* correctness
|
||||
* external/cwe/cwe-662
|
||||
* external/cwe/cwe-366
|
||||
*/
|
||||
|
||||
@@ -5,9 +5,10 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/inconsistent-lock-sequence
|
||||
* @tags reliability
|
||||
* correctness
|
||||
* @tags quality
|
||||
* reliability
|
||||
* concurrency
|
||||
* correctness
|
||||
* external/cwe/cwe-662
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,8 +6,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/lock-this
|
||||
* @tags reliability
|
||||
* maintainability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* concurrency
|
||||
* modularity
|
||||
* external/cwe/cwe-662
|
||||
*/
|
||||
|
||||
@@ -5,9 +5,10 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/locked-wait
|
||||
* @tags reliability
|
||||
* correctness
|
||||
* @tags quality
|
||||
* reliability
|
||||
* concurrency
|
||||
* correctness
|
||||
* external/cwe/cwe-662
|
||||
* external/cwe/cwe-833
|
||||
*/
|
||||
|
||||
@@ -5,8 +5,9 @@
|
||||
* @kind problem
|
||||
* @problem.severity warning
|
||||
* @id cs/useless-assignment-to-local
|
||||
* @tags maintainability
|
||||
* quality
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* useless-code
|
||||
* external/cwe/cwe-563
|
||||
* @precision very-high
|
||||
*/
|
||||
|
||||
@@ -5,7 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/xmldoc/missing-summary
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
*/
|
||||
|
||||
import Documentation
|
||||
|
||||
@@ -5,8 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/cast-of-this-to-type-parameter
|
||||
* @tags reliability
|
||||
* maintainability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,8 +6,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/catch-of-all-exceptions
|
||||
* @tags reliability
|
||||
* maintainability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* error-handling
|
||||
* external/cwe/cwe-396
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,8 +6,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/chained-type-tests
|
||||
* @tags changeability
|
||||
* maintainability
|
||||
* @tags reliability
|
||||
* performance
|
||||
* changeability
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -5,8 +5,10 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/downcast-of-this
|
||||
* @tags testability
|
||||
* maintainability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* testability
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -5,8 +5,10 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/type-test-of-this
|
||||
* @tags testability
|
||||
* maintainability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* testability
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,9 +6,10 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/missed-readonly-modifier
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* language-features
|
||||
* quality
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,7 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/missed-ternary-operator
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -5,7 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/missed-using-statement
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -5,7 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/nested-if-statements
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,9 +6,10 @@
|
||||
* @problem.severity warning
|
||||
* @precision very-high
|
||||
* @id cs/rethrown-exception-variable
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* error-handling
|
||||
* language-features
|
||||
* exceptions
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,8 +5,9 @@
|
||||
* @kind problem
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @tags readability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,8 +6,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/unused-property-value
|
||||
* @tags reliability
|
||||
* maintainability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,11 +6,10 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/index-out-of-bounds
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* logic
|
||||
* quality
|
||||
* external/cwe/cwe-193
|
||||
* external/cwe/cwe-193
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,10 +5,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision very-high
|
||||
* @id cs/test-for-negative-container-size
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* logic
|
||||
* quality
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/empty-collection
|
||||
* @tags reliability
|
||||
* maintainability
|
||||
* useless-code
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* external/cwe/cwe-561
|
||||
*/
|
||||
|
||||
|
||||
@@ -5,7 +5,8 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/unused-collection
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* useless-code
|
||||
* external/cwe/cwe-561
|
||||
*/
|
||||
|
||||
@@ -5,7 +5,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/constant-comparison
|
||||
* @tags correctness
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,10 +6,9 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/non-short-circuit
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* logic
|
||||
* quality
|
||||
* external/cwe/cwe-480
|
||||
* external/cwe/cwe-691
|
||||
*/
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/equality-on-floats
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* quality
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,7 +5,8 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/equals-on-arrays
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/gethashcode-is-not-defined
|
||||
* @tags reliability
|
||||
* maintainability
|
||||
* quality
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/impossible-array-cast
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* logic
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,7 +5,8 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/equals-on-unrelated-types
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/nested-loops-with-same-variable
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* logic
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,7 +6,8 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/loss-of-precision
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* external/cwe/cwe-190
|
||||
* external/cwe/cwe-192
|
||||
|
||||
@@ -6,8 +6,9 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/recursive-equals-call
|
||||
* @tags reliability
|
||||
* maintainability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/reference-equality-on-valuetypes
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* quality
|
||||
* external/cwe/cwe-595
|
||||
*/
|
||||
|
||||
|
||||
@@ -5,10 +5,9 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/self-assignment
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
* logic
|
||||
* quality
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,8 +6,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/empty-block
|
||||
* @tags reliability
|
||||
* readability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,9 +6,10 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/empty-lock-statement
|
||||
* @tags changeability
|
||||
* readability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* concurrency
|
||||
* changeability
|
||||
* language-features
|
||||
* external/cwe/cwe-585
|
||||
*/
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/static-field-written-by-instance
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* modularity
|
||||
*/
|
||||
|
||||
@@ -6,7 +6,9 @@
|
||||
* @problem.severity error
|
||||
* @precision high
|
||||
* @id cs/stringbuilder-initialized-with-character
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
import semmle.code.csharp.frameworks.system.Text
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/unchecked-cast-in-equals
|
||||
* @tags reliability
|
||||
* maintainability
|
||||
* quality
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,7 +6,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/linq/missed-all
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,7 +6,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/linq/missed-cast
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,7 +6,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/linq/missed-oftype
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -6,7 +6,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/linq/missed-select
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -5,7 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/linq/missed-where
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* language-features
|
||||
*/
|
||||
|
||||
|
||||
@@ -5,7 +5,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision very-high
|
||||
* @id cs/linq/useless-select
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* useless-code
|
||||
* language-features
|
||||
* external/cwe/cwe-561
|
||||
*/
|
||||
|
||||
@@ -5,7 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision very-high
|
||||
* @id cs/stringbuilder-creation-in-loop
|
||||
* @tags efficiency
|
||||
* @tags quality
|
||||
* reliability
|
||||
* performance
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision very-high
|
||||
* @id cs/string-concatenation-in-loop
|
||||
* @tags efficiency
|
||||
* maintainability
|
||||
* quality
|
||||
* @tags quality
|
||||
* reliability
|
||||
* performance
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/inefficient-containskey
|
||||
* @tags maintainability
|
||||
* efficiency
|
||||
* quality
|
||||
* @tags quality
|
||||
* reliability
|
||||
* performance
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
* @problem.severity warning
|
||||
* @precision very-high
|
||||
* @id cs/call-to-object-tostring
|
||||
* @tags reliability
|
||||
* maintainability
|
||||
* quality
|
||||
* @tags quality
|
||||
* reliability
|
||||
* correctness
|
||||
*/
|
||||
|
||||
import DefaultToStringQuery
|
||||
|
||||
@@ -5,8 +5,10 @@
|
||||
* @problem.severity warning
|
||||
* @precision very-high
|
||||
* @id cs/useless-if-statement
|
||||
* @tags reliability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* useless-code
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,9 +6,10 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/useless-gethashcode-call
|
||||
* @tags readability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* readability
|
||||
* useless-code
|
||||
* quality
|
||||
*/
|
||||
|
||||
import csharp
|
||||
|
||||
@@ -6,7 +6,8 @@
|
||||
* @problem.severity recommendation
|
||||
* @precision high
|
||||
* @id cs/useless-tostring-call
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* useless-code
|
||||
*/
|
||||
|
||||
|
||||
@@ -5,7 +5,8 @@
|
||||
* @problem.severity warning
|
||||
* @precision high
|
||||
* @id cs/unused-label
|
||||
* @tags maintainability
|
||||
* @tags quality
|
||||
* maintainability
|
||||
* useless-code
|
||||
*/
|
||||
|
||||
|
||||
4
csharp/ql/src/change-notes/2025-06-16-tagging.md
Normal file
4
csharp/ql/src/change-notes/2025-06-16-tagging.md
Normal file
@@ -0,0 +1,4 @@
|
||||
---
|
||||
category: queryMetadata
|
||||
---
|
||||
* Query metadata tags have been systematically updated for many C# queries. Primary categorization as either `reliability` or `maintainability`, and relevant sub-category tags such as `readability`, `useless-code`, `complexity`, `performance`, `correctness`, `error-handling`, and `concurrency`. Aligns with the established [Query file metadata and alert message style guide](https://github.com/github/codeql/blob/main/docs/query-metadata-style-guide.md#quality-query-sub-category-tags).
|
||||
Reference in New Issue
Block a user