This lists issues that came up when merging GC3 patches to GC4. - [ ] 1. Decide what to do about gcdiff, espacially under MSVC ([see here for details](https://github.com/OCamlPro/gnucobol/pull/147#issuecomment-2209485390)) - [ ] 2. Correctly implement delay-loading under MSVC - [ ] 3. Possibly drop usage of external `cobxref` ([see here for details](https://github.com/OCamlPro/gnucobol/pull/147#discussion_r1665704804)) - [ ] 4. Fix any remaining failed test case (especially MSVC ones) - [ ] 5. Rework the context-sensitive reserved words handling (or use a bigger type) - [ ] 6. - Add --error-list -e to cobc - [ ] 7. Investigate the two CHECKMEs about `bdb_close_cursor` in `fbdb.c:ix_bdb_write_internal ` - [ ] 8. Investigate the CHECKMEs in `typeck.c:validate_move` and in particular why it was necessary to add `CB_LITERAL_P` (checks to add in parser) - [ ] 9. Investigate CHECKME about the need for comma in `move.c:cob_move_display_to_edited` (first in GC 3.x) - [ ] 10. Investigate the CHECKME about moving cob_set_exception call in common.c:cob_module_global_enter - [ ] 11. Investigate the TODO about cb_default_byte in `codegen.c:output_initialize` - [ ] 12. Make status an enum instead of an int in `fileio.c:cob_file_save_status` - [ ] 13. Move the IO status codes from `common.h` to `fileio.h` as per TODO - [ ] 14. Make field type an enum instead of a short in common.h:cob_field_attr as per TODO - [ ] 15. Investigate `INITIALIZE BY VALUE` (currently under `#if 0`) in `field.c:validate_field_value` - [ ] 16. Check the code for setting `last_exception_source` (currently under `#if 0`) in `common.c:cob_set_exception` - [ ] 17. Deal with the TODO about EOP exception in `fileio.c:cob_file_save_status` - [ ] 18. Investigate the need to define `READ_WRITE_NEEDS_FLUSH` under MacOS ("LINE SEQUENTIAL COMMIT / ROLLBACK" test fails if not defined) - [ ] 19. Check if should use `strcpy` or `memcpy` with computed max-length for `file_open_name` in `fileio.c:cob_open` - [ ] 20. Check what we should do about the casts used to remove `const` on `open_mode` in `fileio.c` and others (eg. in `cob_open_file`) - [ ] 21. Investigate failed manual tests "CRT STATUS clause" and "X/Open CRT STATUS clause" (see r4180)
This lists issues that came up when merging GC3 patches to GC4.
cobxref(see here for details)bdb_close_cursorinfbdb.c:ix_bdb_write_internaltypeck.c:validate_moveand in particular why it was necessary to addCB_LITERAL_P(checks to add in parser)move.c:cob_move_display_to_edited(first in GC 3.x)codegen.c:output_initializefileio.c:cob_file_save_statuscommon.htofileio.has per TODOINITIALIZE BY VALUE(currently under#if 0) infield.c:validate_field_valuelast_exception_source(currently under#if 0) incommon.c:cob_set_exceptionfileio.c:cob_file_save_statusREAD_WRITE_NEEDS_FLUSHunder MacOS ("LINE SEQUENTIAL COMMIT / ROLLBACK" test fails if not defined)strcpyormemcpywith computed max-length forfile_open_nameinfileio.c:cob_openconstonopen_modeinfileio.cand others (eg. incob_open_file)