]> granicus.if.org Git - clang/commit
[analyzer] MIGChecker: Take advantage of the mig_server_routine annotation.
authorArtem Dergachev <artem.dergachev@gmail.com>
Fri, 22 Feb 2019 00:02:47 +0000 (00:02 +0000)
committerArtem Dergachev <artem.dergachev@gmail.com>
Fri, 22 Feb 2019 00:02:47 +0000 (00:02 +0000)
commitf016479d52538ebdbe0fbc6a61638d8c39c5dd4c
tree74abdeb2ffbc74596fbfefcb5779a4b3de734fce
parent6ce648a1c1e92094fbff01c0677c43e6eece43e9
[analyzer] MIGChecker: Take advantage of the mig_server_routine annotation.

r354530 has added a new function/block/message attribute "mig_server_routine"
that attracts compiler's attention to functions that need to follow the MIG
server routine convention with respect to deallocating out-of-line data that
was passed to them as an argument.

Teach the checker to identify MIG routines by looking at this attribute,
rather than by making heuristic-based guesses.

rdar://problem/35380337

Differential Revision: https://reviews.llvm.org/58366

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@354638 91177308-0d34-0410-b5e6-96231b3b80d8
lib/StaticAnalyzer/Checkers/MIGChecker.cpp
test/Analysis/mig.mm