summaryrefslogtreecommitdiff
path: root/src/tools
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools')
-rw-r--r--src/tools/spectest-interp.cc20
-rw-r--r--src/tools/wasm-validate.cc3
-rw-r--r--src/tools/wasm2c.cc3
-rw-r--r--src/tools/wasm2wat.cc3
-rw-r--r--src/tools/wast2json.cc7
-rw-r--r--src/tools/wat-desugar.cc2
-rw-r--r--src/tools/wat2wasm.cc7
7 files changed, 20 insertions, 25 deletions
diff --git a/src/tools/spectest-interp.cc b/src/tools/spectest-interp.cc
index b2189c64..f66efcdd 100644
--- a/src/tools/spectest-interp.cc
+++ b/src/tools/spectest-interp.cc
@@ -802,7 +802,7 @@ class CommandRunner {
wabt::Result ReadInvalidTextModule(string_view module_filename,
Environment* env,
- ErrorHandler* error_handler);
+ const std::string& header);
wabt::Result ReadInvalidModule(int line_number,
string_view module_filename,
Environment* env,
@@ -976,19 +976,21 @@ ExecResult CommandRunner::RunAction(int line_number,
wabt::Result CommandRunner::ReadInvalidTextModule(string_view module_filename,
Environment* env,
- ErrorHandler* error_handler) {
+ const std::string& header) {
std::unique_ptr<WastLexer> lexer =
WastLexer::CreateFileLexer(module_filename);
+ ErrorHandlerFile error_handler(Location::Type::Text, lexer->MakeLineFinder(),
+ stdout, header,
+ ErrorHandlerFile::PrintHeader::Once);
std::unique_ptr<::Script> script;
- wabt::Result result = ParseWastScript(lexer.get(), &script, error_handler);
+ wabt::Result result = ParseWastScript(lexer.get(), &script, &error_handler);
if (Succeeded(result)) {
wabt::Module* module = script->GetFirstModule();
- result = ResolveNamesModule(lexer.get(), module, error_handler);
+ result = ResolveNamesModule(module, &error_handler);
if (Succeeded(result)) {
ValidateOptions options(s_features);
// Don't do a full validation, just validate the function signatures.
- result =
- ValidateFuncSignatures(lexer.get(), module, error_handler, options);
+ result = ValidateFuncSignatures(module, &error_handler, options);
}
}
return result;
@@ -1032,14 +1034,12 @@ wabt::Result CommandRunner::ReadInvalidModule(int line_number,
switch (module_type) {
case ModuleType::Text: {
- ErrorHandlerFile error_handler(Location::Type::Text, stdout, header,
- ErrorHandlerFile::PrintHeader::Once);
- return ReadInvalidTextModule(module_filename, env, &error_handler);
+ return ReadInvalidTextModule(module_filename, env, header);
}
case ModuleType::Binary: {
DefinedModule* module;
- ErrorHandlerFile error_handler(Location::Type::Binary, stdout, header,
+ ErrorHandlerFile error_handler(Location::Type::Binary, {}, stdout, header,
ErrorHandlerFile::PrintHeader::Once);
return ReadModule(module_filename, env, &error_handler, &module);
}
diff --git a/src/tools/wasm-validate.cc b/src/tools/wasm-validate.cc
index 4cbd5605..54c13daa 100644
--- a/src/tools/wasm-validate.cc
+++ b/src/tools/wasm-validate.cc
@@ -85,9 +85,8 @@ int ProgramMain(int argc, char** argv) {
result = ReadBinaryIr(s_infile.c_str(), file_data.data(), file_data.size(),
options, &error_handler, &module);
if (Succeeded(result)) {
- WastLexer* lexer = nullptr;
ValidateOptions options(s_features);
- result = ValidateModule(lexer, &module, &error_handler, options);
+ result = ValidateModule(&module, &error_handler, options);
}
}
return result != Result::Ok;
diff --git a/src/tools/wasm2c.cc b/src/tools/wasm2c.cc
index 6748cf0c..45a55b0b 100644
--- a/src/tools/wasm2c.cc
+++ b/src/tools/wasm2c.cc
@@ -125,8 +125,7 @@ int ProgramMain(int argc, char** argv) {
if (Succeeded(result)) {
if (Succeeded(result)) {
ValidateOptions options(s_features);
- WastLexer* lexer = nullptr;
- result = ValidateModule(lexer, &module, &error_handler, options);
+ result = ValidateModule(&module, &error_handler, options);
result |= GenerateNames(&module);
}
diff --git a/src/tools/wasm2wat.cc b/src/tools/wasm2wat.cc
index 03a68e1c..fe1d17a9 100644
--- a/src/tools/wasm2wat.cc
+++ b/src/tools/wasm2wat.cc
@@ -117,9 +117,8 @@ int ProgramMain(int argc, char** argv) {
options, &error_handler, &module);
if (Succeeded(result)) {
if (Succeeded(result) && s_validate) {
- WastLexer* lexer = nullptr;
ValidateOptions options(s_features);
- result = ValidateModule(lexer, &module, &error_handler, options);
+ result = ValidateModule(&module, &error_handler, options);
}
if (s_generate_names) {
diff --git a/src/tools/wast2json.cc b/src/tools/wast2json.cc
index ca047ec3..f82a493d 100644
--- a/src/tools/wast2json.cc
+++ b/src/tools/wast2json.cc
@@ -100,19 +100,18 @@ int ProgramMain(int argc, char** argv) {
WABT_FATAL("unable to read file: %s\n", s_infile);
}
- ErrorHandlerFile error_handler(Location::Type::Text);
+ ErrorHandlerFile error_handler(Location::Type::Text, lexer->MakeLineFinder());
std::unique_ptr<Script> script;
WastParseOptions parse_wast_options(s_features);
Result result = ParseWastScript(lexer.get(), &script, &error_handler,
&parse_wast_options);
if (Succeeded(result)) {
- result = ResolveNamesScript(lexer.get(), script.get(), &error_handler);
+ result = ResolveNamesScript(script.get(), &error_handler);
if (Succeeded(result) && s_validate) {
ValidateOptions options(s_features);
- result =
- ValidateScript(lexer.get(), script.get(), &error_handler, options);
+ result = ValidateScript(script.get(), &error_handler, options);
}
if (Succeeded(result)) {
diff --git a/src/tools/wat-desugar.cc b/src/tools/wat-desugar.cc
index f291a995..5deb9615 100644
--- a/src/tools/wat-desugar.cc
+++ b/src/tools/wat-desugar.cc
@@ -90,7 +90,7 @@ int ProgramMain(int argc, char** argv) {
WABT_FATAL("unable to read %s\n", s_infile);
}
- ErrorHandlerFile error_handler(Location::Type::Text);
+ ErrorHandlerFile error_handler(Location::Type::Text, lexer->MakeLineFinder());
std::unique_ptr<Script> script;
WastParseOptions parse_wast_options(s_features);
Result result = ParseWastScript(lexer.get(), &script, &error_handler,
diff --git a/src/tools/wat2wasm.cc b/src/tools/wat2wasm.cc
index c9f554c2..5810ba56 100644
--- a/src/tools/wat2wasm.cc
+++ b/src/tools/wat2wasm.cc
@@ -131,19 +131,18 @@ int ProgramMain(int argc, char** argv) {
WABT_FATAL("unable to read file: %s\n", s_infile);
}
- ErrorHandlerFile error_handler(Location::Type::Text);
+ ErrorHandlerFile error_handler(Location::Type::Text, lexer->MakeLineFinder());
std::unique_ptr<Module> module;
WastParseOptions parse_wast_options(s_features);
Result result =
ParseWatModule(lexer.get(), &module, &error_handler, &parse_wast_options);
if (Succeeded(result)) {
- result = ResolveNamesModule(lexer.get(), module.get(), &error_handler);
+ result = ResolveNamesModule(module.get(), &error_handler);
if (Succeeded(result) && s_validate) {
ValidateOptions options(s_features);
- result =
- ValidateModule(lexer.get(), module.get(), &error_handler, options);
+ result = ValidateModule(module.get(), &error_handler, options);
}
if (Succeeded(result)) {