diff --git a/maca_trans_parser/src/simple_decoder_parser_arc_eager.c b/maca_trans_parser/src/simple_decoder_parser_arc_eager.c
index aca5cddc065baddcff680f378df70f4540cc47b9..24e0bb816ccde999dea763734451c0ebd682b727 100644
--- a/maca_trans_parser/src/simple_decoder_parser_arc_eager.c
+++ b/maca_trans_parser/src/simple_decoder_parser_arc_eager.c
@@ -151,10 +151,10 @@ void simple_decoder_parser_arc_eager(context *ctx)
   int index;
   float score;
   
-  double sumExp = 0;
-  double currentSumExp = 0;
-  double ScoreTranslation = -10;
-  int FlagNotInitExp = 1;
+  double sumExp;
+  double currentSumExp;
+  double ScoreTranslation;
+  int FlagNotInitExp;
   
   word* word_scored;
   
@@ -163,6 +163,11 @@ void simple_decoder_parser_arc_eager(context *ctx)
   
   c = config_new(f, ctx->mcd_struct, 5);
   while(!config_is_terminal(c)){
+    
+    sumExp = 0;
+    currentSumExp = 0;
+    ScoreTranslation = -10;
+    FlagNotInitExp = 1;
 
     if(ctx->debug_mode){
       fprintf(stdout, "***********************************\n");