Skip to content
Snippets Groups Projects
  • Pavel Labath's avatar
    95ab9e30
    [analyzer] Add very limited support for temporary destructors · 95ab9e30
    Pavel Labath authored
    This is an improved version of r186498. It enables ExprEngine to reason about
    temporary object destructors.  However, these destructor calls are never
    inlined, since this feature is still broken. Still, this is sufficient to
    properly handle noreturn temporary destructors.
    
    Now, the analyzer correctly handles expressions like "a || A()", and executes the
    destructor of "A" only on the paths where "a" evaluted to false.
    
    Temporary destructor processing is still off by default and one has to
    explicitly request it by setting cfg-temporary-dtors=true.
    
    Reviewers: jordan_rose
    
    CC: cfe-commits
    
    Differential Revision: http://llvm-reviews.chandlerc.com/D1259
    
    git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189746 91177308-0d34-0410-b5e6-96231b3b80d8
    95ab9e30
    History
    [analyzer] Add very limited support for temporary destructors
    Pavel Labath authored
    This is an improved version of r186498. It enables ExprEngine to reason about
    temporary object destructors.  However, these destructor calls are never
    inlined, since this feature is still broken. Still, this is sufficient to
    properly handle noreturn temporary destructors.
    
    Now, the analyzer correctly handles expressions like "a || A()", and executes the
    destructor of "A" only on the paths where "a" evaluted to false.
    
    Temporary destructor processing is still off by default and one has to
    explicitly request it by setting cfg-temporary-dtors=true.
    
    Reviewers: jordan_rose
    
    CC: cfe-commits
    
    Differential Revision: http://llvm-reviews.chandlerc.com/D1259
    
    git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189746 91177308-0d34-0410-b5e6-96231b3b80d8
Code owners
Assign users and groups as approvers for specific file changes. Learn more.