Releases
v1.2.0
Added
Support for on-demand plugin downloading, which is being introduced in SonarQube 10.4 .
Support for the LLVM
symbol, which is defined on LLVM-based toolchains from Delphi 12 onward.
Support for the IOSSIMULATOR
symbol, which is defined on the DCCIOSSIMARM64
toolchain.
FormDfm
analysis rule, which flags VCL forms/frames that lack a .dfm
resource.
FormFmx
analysis rule, which flags FireMonkey forms/frames that lack a .fmx
resource.
FormatArgumentCount
analysis rule, which flags Format
calls where the number of format arguments does not match the number of format specifiers.
FormatArgumentType
analysis rule, which flags Format
arguments with types that are incompatible with their corresponding format specifiers.
FormatStringValid
analysis rule, which flags Format
calls with invalid format strings.
API: CompilerDirectiveParser
now returns a new ResourceDirective
type when parsing resource directives .
Changed
Alternative casings Writeln
and Readln
are now allowed in MixedNames
.
Improve clarity of the rule description for EmptyRoutine
.
Fixed
Parsing errors on .dpr
files without a top-level begin
.
Symbol table errors on declarations that shared a name with a unit import.
Symbol table executor failures on include directives that include multiple symbol declarations or references.
The Copy
intrinsic inferred an incorrect return type for PChar
, PAnsiChar
, and variants.
The Concat
intrinsic inferred an incorrect return type for single-character string literals.
The ReadLn
intrinsic was missing the standard input overload.
Ideographic space (U+3000) was erroneously accepted as a valid identifier character.
Duplicate imports in a requires
clause now log a warning instead of throwing an exception.
You can’t perform that action at this time.