summaryrefslogtreecommitdiff
path: root/klm/lm/read_arpa.cc
diff options
context:
space:
mode:
Diffstat (limited to 'klm/lm/read_arpa.cc')
-rw-r--r--klm/lm/read_arpa.cc14
1 files changed, 14 insertions, 0 deletions
diff --git a/klm/lm/read_arpa.cc b/klm/lm/read_arpa.cc
index 0e90196d..060a97ea 100644
--- a/klm/lm/read_arpa.cc
+++ b/klm/lm/read_arpa.cc
@@ -3,6 +3,7 @@
#include "lm/blank.hh"
#include <cstdlib>
+#include <iostream>
#include <vector>
#include <ctype.h>
@@ -115,4 +116,17 @@ void ReadEnd(util::FilePiece &in) {
} catch (const util::EndOfFileException &e) {}
}
+void PositiveProbWarn::Warn(float prob) {
+ switch (action_) {
+ case THROW_UP:
+ UTIL_THROW(FormatLoadException, "Positive log probability " << prob << " in the model. This is a bug in IRSTLM; you can set config.positive_log_probability = SILENT or pass -i to build_binary to substitute 0.0 for the log probability. Error");
+ case COMPLAIN:
+ std::cerr << "There's a positive log probability " << prob << " in the APRA file, probably because of a bug in IRSTLM. This and subsequent entires will be mapepd to 0 log probability." << std::endl;
+ action_ = SILENT;
+ break;
+ case SILENT:
+ break;
+ }
+}
+
} // namespace lm