Index: src/Common/Stats/Time.cc
===================================================================
--- src/Common/Stats/Time.cc	(revision 0a616e01964452b90204d19710c490e699c8ddce)
+++ src/Common/Stats/Time.cc	(revision 91d658470970fa957fbb17770ddc08f0334a9883)
@@ -36,6 +36,6 @@
 			point_t global_begin;
 
-			size_t prevl = 0;
-			size_t currl = 0;
+			int prevl = 0;
+			int currl = 0;
 
 			template<typename T>
@@ -88,14 +88,10 @@
 				virtual void print(std::ostream & os) override {
 					if(currl > prevl) {
-						// std::cerr << "push last " << last << std::endl;
 						parents.push(last);
-					} else if(currl < prevl) {
+					}
+					for(auto lvl = prevl - currl; lvl > 0; lvl--) {
 						parents.pop();
-						// std::cerr << "pop, top = " << parents.top() << std::endl;
 					}
-					// else {
-						last = end - begin;
-						// std::cerr << "last = " << last << "\t";
-					// }
+					last = end - begin;
 
 					assert(finished);
@@ -136,6 +132,6 @@
 			std::stack<TimerNode *> nodes;
 
-			std::chrono::duration<double> TimerNode::last = {};
-			std::stack<std::chrono::duration<double>> TimerNode::parents = {};
+			std::chrono::duration<double> TimerNode::last;
+			std::stack<std::chrono::duration<double>> TimerNode::parents;
 
 			void StartGlobal() {
