diff --git a/maca_trans_parser/src/cff2fann.c b/maca_trans_parser/src/cff2fann.c index 4a39ebc56b9f437a45376986758f270ce60321a2..b90246da841489ebb78f94b4e2a8e167b6635279 100644 --- a/maca_trans_parser/src/cff2fann.c +++ b/maca_trans_parser/src/cff2fann.c @@ -63,7 +63,7 @@ void print_header(mcd *m, feat_model *fm) for(i=0; i <fm->nbelem; i++){ fd = fm->array[i]; if(fd->nbelem > 1){ - printf("feature %d is a complex feature, skipping it\n", i); + fprintf(stderr, "feature %d is a complex feature, skipping it\n", i); } else{ sfd = fd->array[0]; @@ -76,7 +76,7 @@ void print_header(mcd *m, feat_model *fm) for(i=0; i <fm->nbelem; i++){ fd = fm->array[i]; if(fd->nbelem > 1){ - printf("feature %d is a complex feature, skipping it\n", i); + fprintf(stderr, "feature %d is a complex feature, skipping it\n", i); } else{ sfd = fd->array[0]; diff --git a/maca_trans_parser/src/maca_tm_decoder.c b/maca_trans_parser/src/maca_tm_decoder.c index ee5f9758cc3aaff436512db3e5ecfe2a2638a3a4..f532ea1fc3a0279f9fc41cde9f88159762ab6af1 100644 --- a/maca_trans_parser/src/maca_tm_decoder.c +++ b/maca_trans_parser/src/maca_tm_decoder.c @@ -263,7 +263,7 @@ void maca_tm_decoder(context *ctx) fprintf(stdout, "***********************************\n"); fprintf(stdout, "%s ", ctx->machine->state_array[c->current_state_nb]->name); config_print(stdout, c); - classifier_print_vcode_array(stderr, classif, c, 4); + classifier_print_vcode_array(stdout, classif, c, 4); } result = movement_apply(c, mvt_code, classifier_get_output_tagset(classif), root_label, ctx->machine); @@ -272,8 +272,11 @@ void maca_tm_decoder(context *ctx) /* it is bm1 rather than b0 because the machine changed state after applying the pos movement */ word_sprint_col_n(form_str, word_buffer_bm1(config_get_buffer(c)), mcd_get_form_col(ctx->mcd_struct)); pos_str = dico_int2string(dico_pos, word_get_pos(word_buffer_bm1(config_get_buffer(c)))); - lemma_str = fplm_lookup_lemma(fplm, form_str, pos_str, ctx->verbose); - lemma_code = dico_string2int(dico_forms, lemma_str); + lemma_code = -1; + if(pos_str){ + lemma_str = fplm_lookup_lemma(fplm, form_str, pos_str, ctx->verbose); + lemma_code = dico_string2int(dico_forms, lemma_str); + } word_set_lemma(word_buffer_bm1(config_get_buffer(c)), lemma_code); /* printf("--------> form = %s pos = %s lemma = %s code = %d\n", form_str, pos_str, lemma_str, lemma_code); */ }