2525#include < set>
2626#include < list>
2727#include < string>
28+ #include < ctime>
2829#include < vector>
2930#include " config.h"
3031
@@ -137,6 +138,7 @@ class CPPCHECKLIB TemplateSimplifier {
137138 * @param errorlogger error logger
138139 * @param _settings settings
139140 * @param tok token where the template declaration begins
141+ * @param maxtime time when the simplification will stop
140142 * @param templateInstantiations a list of template usages (not necessarily just for this template)
141143 * @param expandedtemplates all templates that has been expanded so far. The full names are stored.
142144 * @return true if the template was instantiated
@@ -146,6 +148,7 @@ class CPPCHECKLIB TemplateSimplifier {
146148 ErrorLogger* errorlogger,
147149 const Settings *_settings,
148150 const Token *tok,
151+ const std::time_t maxtime,
149152 std::list<Token *> &templateInstantiations,
150153 std::set<std::string> &expandedtemplates);
151154
@@ -154,12 +157,14 @@ class CPPCHECKLIB TemplateSimplifier {
154157 * @param tokenlist token list
155158 * @param errorlogger error logger
156159 * @param _settings settings
160+ * @param maxtime time when the simplification should be stopped
157161 * @param _codeWithTemplates output parameter that is set if code contains templates
158162 */
159163 static void simplifyTemplates (
160164 TokenList& tokenlist,
161165 ErrorLogger* errorlogger,
162166 const Settings *_settings,
167+ const std::time_t maxtime,
163168 bool &_codeWithTemplates);
164169
165170 /* *
0 commit comments