diff --git a/preprocessor b/preprocessor
index e3c716faba552bb59146b3b83d6c2fef5e650299..7b3df21f11b81c83938abd982575260ab61c993a 160000
--- a/preprocessor
+++ b/preprocessor
@@ -1 +1 @@
-Subproject commit e3c716faba552bb59146b3b83d6c2fef5e650299
+Subproject commit 7b3df21f11b81c83938abd982575260ab61c993a
diff --git a/tests/example1_mlv.mod b/tests/example1_mlv.mod
index 19b3608ed0f2ebd2ce27dffbe86534c182830acb..ea9dbf029c816868cb21ff6189c1101e4b9e5321 100644
--- a/tests/example1_mlv.mod
+++ b/tests/example1_mlv.mod
@@ -16,8 +16,14 @@ theta = 2.95;
 
 phi   = 0.1;
 
+/* The following statement is a regression test for #1782.
+   Here the “foo” variable definition depends on “bar”, but the symbol ID of
+   “foo” will be smaller than the symbol ID of “bar”. */
+model_local_variable foo $\text{foo}$;
+
 model;
-#foo = (exp(b)*c)/(exp(b(+1))*c(+1));
+#bar = exp(b)*c;
+#foo = bar/(exp(b(+1))*c(+1));
 c*theta*h^(1+psi)=(1-alpha)*y;
 k = beta*(foo
     *(exp(b(+1))*alpha*y(+1)+(1-delta)*k));