Skip to content

Commit e855113

Browse files
committed
feat(cobc): 添え字範囲外エラーチェックを独立
feat(cobc): Independent check subscript out of bounds これまで-debugオプションの一部であった範囲外エラーチェックを独立して設定可能とした
1 parent 4c6e52c commit e855113

6 files changed

Lines changed: 10 additions & 0 deletions

File tree

cobc/cobc.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2327,6 +2327,11 @@ main (int argc, char *argv[])
23272327
/* Process command line arguments */
23282328
iargs = process_command_line (argc, argv);
23292329

2330+
/* Process config file options */
2331+
if (cb_enable_check_subscript_out_of_bounds) {
2332+
CB_EXCEPTION_ENABLE (COB_EC_BOUND_SUBSCRIPT) = 1;
2333+
}
2334+
23302335
/* Check the filename */
23312336
if (iargs == argc) {
23322337
fprintf (stderr, "cobc: No input files\n");

cobc/config.def

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ CB_CONFIG_BOOLEAN (cb_allow_is_in_sort_key_spec, "allow-is-in-sort-key-spec")
6060
CB_CONFIG_BOOLEAN (cb_allow_search_key_in_rhs, "allow-search-key-in-rhs")
6161
CB_CONFIG_BOOLEAN (cb_ignore_invalid_record_contains, "ignore-invalid-record-contains")
6262
CB_CONFIG_BOOLEAN (cb_zero_division_error, "zero_division_error")
63+
CB_CONFIG_BOOLEAN (cb_enable_check_subscript_out_of_bounds, "enable-check-subscript-out-of-bounds")
6364
CB_CONFIG_SUPPORT (cb_author_paragraph, "author-paragraph")
6465
CB_CONFIG_SUPPORT (cb_memory_size_clause, "memory-size-clause")
6566
CB_CONFIG_SUPPORT (cb_multiple_file_tape_clause, "multiple-file-tape-clause")

config/default-en.conf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,3 +148,4 @@ allow-is-in-sort-key-spec: no
148148
allow-search-key-in-rhs: no
149149
ignore-invalid-record-contains: no
150150
zero_division_error: no
151+
enable-check-subscript-out-of-bounds: yes

config/default-jp.conf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,3 +148,4 @@ allow-is-in-sort-key-spec: no
148148
allow-search-key-in-rhs: no
149149
ignore-invalid-record-contains: no
150150
zero_division_error: yes
151+
enable-check-subscript-out-of-bounds: yes

config/default.conf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,3 +148,4 @@ allow-is-in-sort-key-spec: no
148148
allow-search-key-in-rhs: no
149149
ignore-invalid-record-contains: no
150150
zero_division_error: no
151+
enable-check-subscript-out-of-bounds: no

config/jp-compat.conf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ allow-is-in-sort-key-spec: yes
2323
allow-search-key-in-rhs: yes
2424
ignore-invalid-record-contains: yes
2525
zero_division_error: yes
26+
enable-check-subscript-out-of-bounds: yes
2627

2728
# Value: 'any', 'fatal', 'never'
2829
abort-on-io-exception: fatal

0 commit comments

Comments
 (0)