Check for out-of-range bindings during IO mapping.
diff --git a/StandAlone/StandAlone.cpp b/StandAlone/StandAlone.cpp
index 5d30ac2..f0a4f93 100644
--- a/StandAlone/StandAlone.cpp
+++ b/StandAlone/StandAlone.cpp
@@ -584,6 +584,12 @@
if (! (Options & EOptionOutputPreprocessed) && ! program.link(messages))
LinkFailed = true;
+ // Map IO
+ if (Options & EOptionSpv) {
+ if (!program.mapIO())
+ LinkFailed = true;
+ }
+
// Report
if (! (Options & EOptionSuppressInfolog) &&
! (Options & EOptionMemoryLeakMode)) {
@@ -591,10 +597,6 @@
PutsIfNonEmpty(program.getInfoDebugLog());
}
- // Map IO
- if (Options & EOptionSpv)
- program.mapIO();
-
// Reflect
if (Options & EOptionDumpReflection) {
program.buildReflection();