• DocumentCode
    724753
  • Title

    Detection of incorrect pointer dereferences for C/C++ programs using static code analysis and logical inference

  • Author

    Vert, Tatiana ; Krikun, Tatiana ; Glukhikh, Mikhail

  • Author_Institution
    St. Petersburg State Polytech. Univ., St. Petersburg, Russia
  • fYear
    2013
  • fDate
    10-12 Oct. 2013
  • Firstpage
    78
  • Lastpage
    82
  • Abstract
    This article considers a method for an increase of static code analysis precision. The method extends classic code analysis algorithm with dependency analysis. For this purpose, during abstract interpretation information about statically known values should be extracted as well as dependencies between unknown values. Dependencies can be represented with first-order logic predicates. Such a method allows using of external logical inference tools to prove truth or falsehood of branch conditions and of error occurrence conditions. The main focus is oriented to pointer analysis logic and incorrect dereference detection rules. A prototype is implemented and results of efficiency evaluation are provided. The prototype uses Microsoft Z3 Solver as a logical inference tool. A significant precision increase is shown, ways for performance boosting are suggested.
  • Keywords
    C++ language; inference mechanisms; program diagnostics; quality assurance; software quality; software reliability; source code (software); C/C++ programs; Microsoft Z3 solver; branch conditions; dependency analysis; error occurrence conditions; external logical inference tools; first-order logic predicates; incorrect dereference detection rules; incorrect pointer dereference detection; pointer analysis logic; software quality assurance; static code analysis algorithm; Algorithm design and analysis; Electronic mail; Inference algorithms; Merging; Prototypes; Semantics; Software; C source code error detection; logical inference; static code analysis;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Tools & Methods of Program Analysis (TMPA), 2013
  • Conference_Location
    Kostroma
  • Print_ISBN
    978-0-9860773-1-9
  • Type

    conf

  • DOI
    10.1109/TMPA.2013.7163724
  • Filename
    7163724