Skip to content

Commit 0220711

Browse files
committed
Minor fixes
1 parent 7888e09 commit 0220711

File tree

3 files changed

+18
-16
lines changed

3 files changed

+18
-16
lines changed

cobc/tree.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2373,7 +2373,6 @@ extern struct cb_program *cb_build_program (struct cb_program *,
23732373

23742374
extern cb_tree cb_check_numeric_value (cb_tree);
23752375
extern size_t cb_check_index_or_handle_p (cb_tree x);
2376-
extern void cb_check_valid_set_index (cb_tree, int, int);
23772376
extern void cb_set_dmax (int scale);
23782377

23792378
extern void cb_set_intr_when_compiled (void);

cobc/typeck.c

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -13742,7 +13742,7 @@ cb_check_set_to (cb_tree vars, cb_tree x, const int emit_error)
1374213742
return error_found;
1374313743
}
1374413744

13745-
void
13745+
static void
1374613746
cb_check_valid_set_index (cb_tree vars, int hasval, int setval)
1374713747
{
1374813748
const int emit_exception = cb_flag_check_subscript_set
@@ -13751,10 +13751,14 @@ cb_check_valid_set_index (cb_tree vars, int hasval, int setval)
1375113751
struct cb_field *f, *p;
1375213752
for (l = vars; l; l = CB_CHAIN (l)) {
1375313753
v = CB_VALUE (l);
13754-
if (!CB_REF_OR_FIELD_P (v)) continue;
13754+
if (!CB_REF_OR_FIELD_P (v)) {
13755+
continue;
13756+
}
1375513757
f = CB_FIELD_PTR (v);
13756-
if (!f->flag_indexed_by) continue;
13757-
if (!f->index_qual) continue;
13758+
if (!f->flag_indexed_by
13759+
|| !f->index_qual) {
13760+
continue;
13761+
}
1375813762
p = f->index_qual;
1375913763
if (p->depending) {
1376013764
if (hasval) {
@@ -13768,12 +13772,13 @@ cb_check_valid_set_index (cb_tree vars, int hasval, int setval)
1376813772
cb_int (COB_EC_RANGE_INDEX)));
1376913773
}
1377013774
}
13771-
if (setval >= p->occurs_min) continue;
13775+
if (setval >= p->occurs_min) {
13776+
continue;
13777+
}
1377213778
}
13773-
} else
13774-
if (hasval
13775-
&& setval >= p->occurs_min
13776-
&& setval <= p->occurs_max) {
13779+
} else if (hasval
13780+
&& setval >= p->occurs_min
13781+
&& setval <= p->occurs_max) {
1377713782
continue; /* Checks OK at compile time */
1377813783
} else {
1377913784
if (hasval) {
@@ -13815,8 +13820,7 @@ cb_emit_set_to (cb_tree vars, cb_tree src)
1381513820
} else if (src == cb_zero) {
1381613821
hasval = 1;
1381713822
}
13818-
if (cb_flag_check_subscript_set
13819-
&& CB_EXCEPTION_ENABLE (COB_EC_BOUND_SUBSCRIPT)) {
13823+
if (cb_flag_check_subscript_set) {
1382013824
cb_check_valid_set_index (vars, hasval, setval);
1382113825
}
1382213826
}
@@ -13973,9 +13977,7 @@ cb_emit_set_up_down (cb_tree l, cb_tree flag, cb_tree x)
1397313977
cb_emit (cb_build_sub (target, x, cb_int0));
1397413978
}
1397513979
}
13976-
if (CB_EXCEPTION_ENABLE (COB_EC_RANGE_INDEX)) {
13977-
cb_check_valid_set_index (vars, 0, 0);
13978-
}
13980+
cb_check_valid_set_index (vars, 0, 0);
1397913981
}
1398013982

1398113983
void

tests/testsuite.src/syn_occurs.at

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -714,7 +714,8 @@ AT_DATA([prog.cob], [
714714
END PROGRAM prog.
715715
])
716716

717-
AT_CHECK([$COMPILE_ONLY -fopt-check-subscript-set prog.cob], [1], [], [prog.cob:22: error: an integer, INDEX, or a POINTER is expected here
717+
AT_CHECK([$COMPILE_ONLY -fopt-check-subscript-set prog.cob], [1], [],
718+
[prog.cob:22: error: an integer, INDEX, or a POINTER is expected here
718719
prog.cob:23: error: an integer, INDEX, or a POINTER is expected here
719720
prog.cob:24: warning: SET IB2 TO 10 is out of bounds
720721
prog.cob:36: warning: SET IB1 TO -9 is out of bounds

0 commit comments

Comments
 (0)