From c6c5f877908bdea4223109a7a22ad546e4f990df Mon Sep 17 00:00:00 2001
From: Tomas Pecka <peckato1@fit.cvut.cz>
Date: Tue, 22 Sep 2015 13:47:06 +0200
Subject: [PATCH] Fix DPDA run (missing initial pda symbol, variable shadowing)

---
 alib2algo/src/automaton/run/Accept.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/alib2algo/src/automaton/run/Accept.cpp b/alib2algo/src/automaton/run/Accept.cpp
index 8dd9ad780c..da4e7e7896 100644
--- a/alib2algo/src/automaton/run/Accept.cpp
+++ b/alib2algo/src/automaton/run/Accept.cpp
@@ -117,13 +117,13 @@ auto AcceptNFALinearString = Accept::RegistratorWrapper<bool, automaton::NFA, st
 
 bool Accept::accept(const automaton::DPDA& automaton, const string::LinearString& string) {
 	automaton::State state = automaton.getInitialState();
-	std::deque<alphabet::Symbol> pushdownStore;
+	std::deque<alphabet::Symbol> pushdownStore({automaton.getInitialSymbol()});
 
 	for(const alphabet::Symbol& symbol : string.getContent()) {
 		auto transitions = automaton.getTransitionsFromState(state);
 		auto transition = transitions.begin();
 		int pushdownStoreSize = pushdownStore.size();
-		for(auto transition = transitions.begin(); transition != transitions.end(); transition++) {
+		for( ; transition != transitions.end(); transition++) {
 			if(std::get<1>(transition->first) != symbol) continue;
 
 			const std::vector<alphabet::Symbol> & pop = std::get<2>(transition->first);
-- 
GitLab