Skip to content
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

LLVM 19 support #2640

Merged
merged 1 commit into from
Feb 24, 2024
Merged

Conversation

guwirth
Copy link
Collaborator

@guwirth guwirth commented Feb 22, 2024

  • use tag llvmorg-19-init
  • new ClangTidy rules:
    • bugprone-casting-through-void
    • bugprone-chained-comparison
    • bugprone-compare-pointer-to-member-virtual-function
    • bugprone-empty-catch
    • bugprone-inc-dec-in-conditions
    • bugprone-incorrect-enable-if
    • bugprone-multi-level-implicit-pointer-conversion
    • bugprone-multiple-new-in-one-expression
    • bugprone-non-zero-enum-to-bool-conversion
    • bugprone-optional-value-conversion
    • bugprone-switch-missing-default-case
    • bugprone-unique-ptr-array-mismatch
    • bugprone-unsafe-functions
    • bugprone-unused-local-non-trivial-variable
    • cert-msc24-c
    • cert-msc33-c
    • clang-analyzer-core.BitwiseShift
    • clang-analyzer-core.uninitialized.NewArraySize
    • clang-analyzer-cplusplus.PlacementNew
    • clang-analyzer-cplusplus.PureVirtualCall
    • clang-analyzer-cplusplus.StringChecker
    • clang-analyzer-fuchsia.HandleChecker
    • clang-analyzer-optin.core.EnumCastOutOfRange
    • clang-analyzer-security.cert.env.InvalidPtr
    • clang-analyzer-security.insecureAPI.decodeValueOfObjCType
    • clang-analyzer-unix.Errno
    • clang-analyzer-unix.StdCLibraryFunctions
    • clang-analyzer-webkit.NoUncountedMemberChecker
    • clang-analyzer-webkit.RefCntblBaseVirtualDtor
    • clang-analyzer-webkit.UncountedLambdaCapturesChecker
    • clang-diagnostic-android-unversioned-fallback
    • clang-diagnostic-apinotes
    • clang-diagnostic-array-parameter
    • clang-diagnostic-atomic-access
    • clang-diagnostic-auto-decl-extensions
    • clang-diagnostic-c++11-narrowing-const-reference
    • clang-diagnostic-c++23-default-comp-relaxed-constexpr
    • clang-diagnostic-c++23-extensions
    • clang-diagnostic-c++23-lambda-attributes
    • clang-diagnostic-c++26-extensions
    • clang-diagnostic-c++2c-extensions
    • clang-diagnostic-c23-compat
    • clang-diagnostic-c23-extensions
    • clang-diagnostic-c2x-compat
    • clang-diagnostic-cast-function-type-strict
    • clang-diagnostic-coro-non-aligned-allocation-function
    • clang-diagnostic-delayed-template-parsing-in-cxx20
    • clang-diagnostic-deprecate-lax-vec-conv-all
    • clang-diagnostic-deprecated-builtins
    • clang-diagnostic-deprecated-literal-operator
    • clang-diagnostic-deprecated-module-dot-map
    • clang-diagnostic-deprecated-non-prototype
    • clang-diagnostic-deprecated-redundant-constexpr-static-def
    • clang-diagnostic-deprecated-static-analyzer-flag
    • clang-diagnostic-dxil-validation
    • clang-diagnostic-eager-load-cxx-named-modules
    • clang-diagnostic-enum-constexpr-conversion
    • clang-diagnostic-excessive-regsave
    • clang-diagnostic-experimental-header-units
    • clang-diagnostic-format-overflow
    • clang-diagnostic-format-overflow-non-kprintf
    • clang-diagnostic-format-truncation
    • clang-diagnostic-format-truncation-non-kprintf
    • clang-diagnostic-generic-type-extension
    • clang-diagnostic-gnu-line-marker
    • clang-diagnostic-gnu-null-pointer-arithmetic
    • clang-diagnostic-gnu-offsetof-extensions
    • clang-diagnostic-gnu-pointer-arith
    • clang-diagnostic-gnu-statement-expression-from-macro-expansion
    • clang-diagnostic-hip-omp-target-directives
    • clang-diagnostic-hlsl-extensions
    • clang-diagnostic-ignored-gch
    • clang-diagnostic-include-angled-in-module-purview
    • clang-diagnostic-incompatible-function-pointer-types-strict
    • clang-diagnostic-incompatible-ms-pragma-section
    • clang-diagnostic-invalid-feature-combination
    • clang-diagnostic-invalid-static-assert-message
    • clang-diagnostic-invalid-unevaluated-string
    • clang-diagnostic-invalid-utf8
    • clang-diagnostic-knl-knm-isa-support-removed
    • clang-diagnostic-mathematical-notation-identifier-extension
    • clang-diagnostic-microsoft-init-from-predefined
    • clang-diagnostic-microsoft-string-literal-from-predefined
    • clang-diagnostic-misexpect
    • clang-diagnostic-missing-multilib
    • clang-diagnostic-module-include-translation
    • clang-diagnostic-multi-gpu
    • clang-diagnostic-nan-infinity-disabled
    • clang-diagnostic-nonportable-private-apinotes-path
    • clang-diagnostic-nonportable-private-system-apinotes-path
    • clang-diagnostic-objc-duplicate-category-definition
    • clang-diagnostic-openacc
    • clang-diagnostic-openmp-extensions
    • clang-diagnostic-openmp-target-exception
    • clang-diagnostic-overriding-option
    • clang-diagnostic-packed-non-pod
    • clang-diagnostic-padded-bitfield
    • clang-diagnostic-pre-c++23-compat
    • clang-diagnostic-pre-c++23-compat-pedantic
    • clang-diagnostic-pre-c++26-compat
    • clang-diagnostic-pre-c++26-compat-pedantic
    • clang-diagnostic-pre-c++2c-compat
    • clang-diagnostic-pre-c++2c-compat-pedantic
    • clang-diagnostic-pre-c23-compat
    • clang-diagnostic-pre-c23-compat-pedantic
    • clang-diagnostic-read-only-types
    • clang-diagnostic-reserved-module-identifier
    • clang-diagnostic-return-local-addr
    • clang-diagnostic-sarif-format-unstable
    • clang-diagnostic-single-bit-bitfield-constant-conversion
    • clang-diagnostic-sloc-usage
    • clang-diagnostic-source-uses-openacc
    • clang-diagnostic-switch-default
    • clang-diagnostic-sync-alignment
    • clang-diagnostic-tautological-negation-compare
    • clang-diagnostic-thread-safety-reference-return
    • clang-diagnostic-unaligned-qualifier-implicit-cast
    • clang-diagnostic-undefined-arm-streaming
    • clang-diagnostic-undefined-arm-za
    • clang-diagnostic-undefined-arm-zt0
    • clang-diagnostic-unknown-directives
    • clang-diagnostic-unreachable-code-generic-assoc
    • clang-diagnostic-unsafe-buffer-usage
    • clang-diagnostic-vla-cxx-extension
    • clang-diagnostic-vla-extension-static-assert
    • cppcoreguidelines-avoid-capturing-lambda-coroutines
    • cppcoreguidelines-avoid-do-while
    • cppcoreguidelines-avoid-reference-coroutine-parameters
    • cppcoreguidelines-misleading-capture-default-by-value
    • cppcoreguidelines-missing-std-forward
    • cppcoreguidelines-no-suspend-with-lock
    • cppcoreguidelines-noexcept-destructor
    • cppcoreguidelines-noexcept-move-operations
    • cppcoreguidelines-noexcept-swap
    • cppcoreguidelines-rvalue-reference-param-not-moved
    • cppcoreguidelines-use-default-member-init
    • hicpp-ignored-remove-result
    • llvmlibc-inline-function-decl
    • misc-coroutine-hostile-raii
    • misc-header-include-cycle
    • misc-include-cleaner
    • modernize-type-traits
    • modernize-use-constraints
    • modernize-use-starts-ends-with
    • modernize-use-std-numbers
    • modernize-use-std-print
    • performance-avoid-endl
    • performance-enum-size
    • performance-noexcept-destructor
    • performance-noexcept-swap
    • readability-avoid-nested-conditional-operator
    • readability-avoid-return-with-void-value
    • readability-avoid-unconditional-preprocessor-if
    • readability-operators-representation
    • readability-redundant-casting
    • readability-redundant-inline-specifier
    • readability-reference-to-constructed-temporary
  • new Clang Static Analyzer rules
    • BitwiseShift
    • EnumCastOutOfRange
    • security.cert.env.InvalidPtr
    • unix.Errno
    • unix.StdCLibraryFunctions
  • add VisualStudio project for development/debugging
  • diagnostic.json: using name 'Summary' instead of 'Text' for description

This change is Reviewable

@guwirth guwirth added this to the 2.1.2 milestone Feb 22, 2024
@guwirth guwirth self-assigned this Feb 22, 2024
- use tag llvmorg-19-init
- new ClangTidy rules:
  - bugprone-casting-through-void
  - bugprone-chained-comparison
  - bugprone-compare-pointer-to-member-virtual-function
  - bugprone-empty-catch
  - bugprone-inc-dec-in-conditions
  - bugprone-incorrect-enable-if
  - bugprone-multi-level-implicit-pointer-conversion
  - bugprone-multiple-new-in-one-expression
  - bugprone-non-zero-enum-to-bool-conversion
  - bugprone-optional-value-conversion
  - bugprone-switch-missing-default-case
  - bugprone-unique-ptr-array-mismatch
  - bugprone-unsafe-functions
  - bugprone-unused-local-non-trivial-variable
  - cert-msc24-c
  - cert-msc33-c
  - clang-analyzer-core.BitwiseShift
  - clang-analyzer-core.uninitialized.NewArraySize
  - clang-analyzer-cplusplus.PlacementNew
  - clang-analyzer-cplusplus.PureVirtualCall
  - clang-analyzer-cplusplus.StringChecker
  - clang-analyzer-fuchsia.HandleChecker
  - clang-analyzer-optin.core.EnumCastOutOfRange
  - clang-analyzer-security.cert.env.InvalidPtr
  - clang-analyzer-security.insecureAPI.decodeValueOfObjCType
  - clang-analyzer-unix.Errno
  - clang-analyzer-unix.StdCLibraryFunctions
  - clang-analyzer-webkit.NoUncountedMemberChecker
  - clang-analyzer-webkit.RefCntblBaseVirtualDtor
  - clang-analyzer-webkit.UncountedLambdaCapturesChecker
  - clang-diagnostic-android-unversioned-fallback
  - clang-diagnostic-apinotes
  - clang-diagnostic-array-parameter
  - clang-diagnostic-atomic-access
  - clang-diagnostic-auto-decl-extensions
  - clang-diagnostic-c++11-narrowing-const-reference
  - clang-diagnostic-c++23-default-comp-relaxed-constexpr
  - clang-diagnostic-c++23-extensions
  - clang-diagnostic-c++23-lambda-attributes
  - clang-diagnostic-c++26-extensions
  - clang-diagnostic-c++2c-extensions
  - clang-diagnostic-c23-compat
  - clang-diagnostic-c23-extensions
  - clang-diagnostic-c2x-compat
  - clang-diagnostic-cast-function-type-strict
  - clang-diagnostic-coro-non-aligned-allocation-function
  - clang-diagnostic-delayed-template-parsing-in-cxx20
  - clang-diagnostic-deprecate-lax-vec-conv-all
  - clang-diagnostic-deprecated-builtins
  - clang-diagnostic-deprecated-literal-operator
  - clang-diagnostic-deprecated-module-dot-map
  - clang-diagnostic-deprecated-non-prototype
  - clang-diagnostic-deprecated-redundant-constexpr-static-def
  - clang-diagnostic-deprecated-static-analyzer-flag
  - clang-diagnostic-dxil-validation
  - clang-diagnostic-eager-load-cxx-named-modules
  - clang-diagnostic-enum-constexpr-conversion
  - clang-diagnostic-excessive-regsave
  - clang-diagnostic-experimental-header-units
  - clang-diagnostic-format-overflow
  - clang-diagnostic-format-overflow-non-kprintf
  - clang-diagnostic-format-truncation
  - clang-diagnostic-format-truncation-non-kprintf
  - clang-diagnostic-generic-type-extension
  - clang-diagnostic-gnu-line-marker
  - clang-diagnostic-gnu-null-pointer-arithmetic
  - clang-diagnostic-gnu-offsetof-extensions
  - clang-diagnostic-gnu-pointer-arith
  - clang-diagnostic-gnu-statement-expression-from-macro-expansion
  - clang-diagnostic-hip-omp-target-directives
  - clang-diagnostic-hlsl-extensions
  - clang-diagnostic-ignored-gch
  - clang-diagnostic-include-angled-in-module-purview
  - clang-diagnostic-incompatible-function-pointer-types-strict
  - clang-diagnostic-incompatible-ms-pragma-section
  - clang-diagnostic-invalid-feature-combination
  - clang-diagnostic-invalid-static-assert-message
  - clang-diagnostic-invalid-unevaluated-string
  - clang-diagnostic-invalid-utf8
  - clang-diagnostic-knl-knm-isa-support-removed
  - clang-diagnostic-mathematical-notation-identifier-extension
  - clang-diagnostic-microsoft-init-from-predefined
  - clang-diagnostic-microsoft-string-literal-from-predefined
  - clang-diagnostic-misexpect
  - clang-diagnostic-missing-multilib
  - clang-diagnostic-module-include-translation
  - clang-diagnostic-multi-gpu
  - clang-diagnostic-nan-infinity-disabled
  - clang-diagnostic-nonportable-private-apinotes-path
  - clang-diagnostic-nonportable-private-system-apinotes-path
  - clang-diagnostic-objc-duplicate-category-definition
  - clang-diagnostic-openacc
  - clang-diagnostic-openmp-extensions
  - clang-diagnostic-openmp-target-exception
  - clang-diagnostic-overriding-option
  - clang-diagnostic-packed-non-pod
  - clang-diagnostic-padded-bitfield
  - clang-diagnostic-pre-c++23-compat
  - clang-diagnostic-pre-c++23-compat-pedantic
  - clang-diagnostic-pre-c++26-compat
  - clang-diagnostic-pre-c++26-compat-pedantic
  - clang-diagnostic-pre-c++2c-compat
  - clang-diagnostic-pre-c++2c-compat-pedantic
  - clang-diagnostic-pre-c23-compat
  - clang-diagnostic-pre-c23-compat-pedantic
  - clang-diagnostic-read-only-types
  - clang-diagnostic-reserved-module-identifier
  - clang-diagnostic-return-local-addr
  - clang-diagnostic-sarif-format-unstable
  - clang-diagnostic-single-bit-bitfield-constant-conversion
  - clang-diagnostic-sloc-usage
  - clang-diagnostic-source-uses-openacc
  - clang-diagnostic-switch-default
  - clang-diagnostic-sync-alignment
  - clang-diagnostic-tautological-negation-compare
  - clang-diagnostic-thread-safety-reference-return
  - clang-diagnostic-unaligned-qualifier-implicit-cast
  - clang-diagnostic-undefined-arm-streaming
  - clang-diagnostic-undefined-arm-za
  - clang-diagnostic-undefined-arm-zt0
  - clang-diagnostic-unknown-directives
  - clang-diagnostic-unreachable-code-generic-assoc
  - clang-diagnostic-unsafe-buffer-usage
  - clang-diagnostic-vla-cxx-extension
  - clang-diagnostic-vla-extension-static-assert
  - cppcoreguidelines-avoid-capturing-lambda-coroutines
  - cppcoreguidelines-avoid-do-while
  - cppcoreguidelines-avoid-reference-coroutine-parameters
  - cppcoreguidelines-misleading-capture-default-by-value
  - cppcoreguidelines-missing-std-forward
  - cppcoreguidelines-no-suspend-with-lock
  - cppcoreguidelines-noexcept-destructor
  - cppcoreguidelines-noexcept-move-operations
  - cppcoreguidelines-noexcept-swap
  - cppcoreguidelines-rvalue-reference-param-not-moved
  - cppcoreguidelines-use-default-member-init
  - hicpp-ignored-remove-result
  - llvmlibc-inline-function-decl
  - misc-coroutine-hostile-raii
  - misc-header-include-cycle
  - misc-include-cleaner
  - modernize-type-traits
  - modernize-use-constraints
  - modernize-use-starts-ends-with
  - modernize-use-std-numbers
  - modernize-use-std-print
  - performance-avoid-endl
  - performance-enum-size
  - performance-noexcept-destructor
  - performance-noexcept-swap
  - readability-avoid-nested-conditional-operator
  - readability-avoid-return-with-void-value
  - readability-avoid-unconditional-preprocessor-if
  - readability-operators-representation
  - readability-redundant-casting
  - readability-redundant-inline-specifier
  - readability-reference-to-constructed-temporary
- new Clang Static Analyzer rules
  - BitwiseShift
  - EnumCastOutOfRange
  - security.cert.env.InvalidPtr
  - unix.Errno
  - unix.StdCLibraryFunctions
- add VisualStudio project for development/debugging
- diagnostic.json: using name 'Summary' instead of 'Text' for description
@guwirth guwirth merged commit e2c2814 into SonarOpenCommunity:master Feb 24, 2024
15 checks passed
@guwirth guwirth mentioned this pull request Aug 8, 2024
@guwirth guwirth deleted the llvm-19.0.0-support branch August 15, 2024 07:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

1 participant