DEADSOFTWARE

Подпрален FOR для соответствия стандарту
[dsw-obn.git] / src / oberon.c
index 1f33a03c9d82bc084e3ffb1b38777b6750bc9c2f..36736a4bf9384333eb1226c1b6835f202cdabab1 100644 (file)
@@ -3644,11 +3644,11 @@ oberon_statement(oberon_context_t * ctx)
                index = oberon_ident_item(ctx, iname);
                oberon_assert_token(ctx, ASSIGN);
                from = oberon_expr(ctx);
-               oberon_assign(ctx, from, index);
                oberon_assert_token(ctx, TO);
                bound = oberon_make_temp_var_item(ctx, index -> result);
                to = oberon_expr(ctx);
-               oberon_assign(ctx, to, bound);
+               oberon_assign(ctx, to, bound); // сначала temp
+               oberon_assign(ctx, from, index); // потом i
                if(ctx -> token == BY)
                {
                        oberon_assert_token(ctx, BY);