diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-06-12 15:32:47 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-06-12 15:32:47 +0300 |
commit | 262b4954b017427c486db0833966e609fe790fe1 (patch) | |
tree | e281e0c0eb2c9a7aabc67773689fbc8c622aa36c /src/plugin.cpp | |
parent | e9e895f8ae0fc51620c6e6da7f6b67ca0c9e1bde (diff) | |
download | paranucker-262b4954b017427c486db0833966e609fe790fe1.tar.gz paranucker-262b4954b017427c486db0833966e609fe790fe1.tar.bz2 paranucker-262b4954b017427c486db0833966e609fe790fe1.tar.xz paranucker-262b4954b017427c486db0833966e609fe790fe1.zip |
Add way to avoid resursion in var_decl.
Update incomplete nodes after whole tree parsed.
Diffstat (limited to 'src/plugin.cpp')
-rw-r--r-- | src/plugin.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/plugin.cpp b/src/plugin.cpp index 71f195b..5d29d66 100644 --- a/src/plugin.cpp +++ b/src/plugin.cpp @@ -28,6 +28,8 @@ #include "parsers/generic.h" +#include <map> + #include "localconsts.h" int plugin_is_GPL_compatible = 1; @@ -35,6 +37,8 @@ int plugin_is_GPL_compatible = 1; struct Node; Command command = Command::Dump; +std::map<tree, Node*> foundNodesMap; +std::map<Node*, Node*> updateNodesMap; static void pre_generic(void *gcc_data, void *user_data A_UNUSED) @@ -44,6 +48,7 @@ static void pre_generic(void *gcc_data, command == Command::DetectNullPointers || command == Command::DumpNullPointers) { + Generic::updateNodes(); Analysis::startWalkTree(node); } Generic::cleanAllNodes(node); |