[all-commits] [llvm/llvm-project] f10a87: [analyzer] Sink false [[assume]] execution paths (...

Balazs Benics via All-commits all-commits at lists.llvm.org
Tue Mar 11 10:11:31 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f10a8706a1443dec834929dadcce837082df64b7
      https://github.com/llvm/llvm-project/commit/f10a8706a1443dec834929dadcce837082df64b7
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2025-03-11 (Tue, 11 Mar 2025)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    A clang/lib/StaticAnalyzer/Checkers/AssumeModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    M clang/test/Analysis/analyzer-enabled-checkers.c
    M clang/test/Analysis/cxx23-assume-attribute.cpp
    M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c

  Log Message:
  -----------
  [analyzer] Sink false [[assume]] execution paths (#130418)

This PR splits the existing modeling of builtin assume from the
BuiltinFunctionChecker.

We just sink the execution path if we are about to leave the assume
expression with a false assumption.
Assumptions with side-effects are skipped, and ignored. Their values are
"UnknownVal" anyway.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list