The following 15 patches constitute 134,033 lines of code in 97 files to build and document the COBOL front end. The messages are grouped by files in a more or less logical order. We have:
4K dir create gcc/cobol and libgcobol directories 8K pre introduce ChangeLog files 92K bld config and build machinery 436K cfg libgcobol/configure 380K hdr header files 156K lex lexer 492K par parser 360K cbl parser support 532K api GENERIC interface 252K gen GENERIC interface support 72K doc man pages and GnuCOBOL emulation 24K pos Posix adapter framework 84K lhd libgcobol header files 480K lib libgcobol support 384K lcc libgcobol, main file Except for "lib", patches over 400 KB consist of just one big file. They are against the master branch as of commit 3e08a4ecea27c54fda90e8f58641b1986ad957e1 Date: Wed Feb 5 14:22:33 2025 -0700 Our repository is https://gitlab.cobolworx.com/COBOLworx/gcc-cobol/ using branch cobol-stage I tested these patches using "git apply" to an unpublished branch "cobol-patched". I will push it on request. There are some whitespace warnings that I understand, and some I do not. There is no trailing whitespace, and tabs occur only in lex/yacc files. I have endeavored to address all the issues raised in Round 1. In particular: 1. The patches are against a recent commit. 2. Generated files use Autoconf 2.69. 3. Flex and Bison outputs respect --enable-generated-files-in-srcdir. We use the gcc FLEX and BISON make variables. 4. Documentation is generated as HTML and PDF. 5. Python machinery has been patched to add 'cobol' 6. ChangeLogs ! 7. libgcobol builds independent of gcc/cobol. The library does not use compiler header files. Shared information is maintained in library headers. 8. --enable-languages=all works. gcobol supports x86_64 and aarch64 (so far, for now). For unsupported targets, configure reports gcobol is not built. We have built with multilib enabled and from bootstrap. 9. Diagnostic messages go through the diagnostic framework, and report the location, including the column. 10. Use xasprintf & friends from libiberty. Removed PATH_MAX. Still to come: 11. Enumerated warnings in cobol/lang.opt. 12. texinfo update to describe gcobol 13. cross-compilation This patchset still excludes tests. I will supply tests separately. Simplest I think is to use the NIST test suite, assuming the code and documentation passes legal muster. I want to thank David and Matthias for their patches, which are incorporated. My thanks too to the many people contributed invaluable advice and offered encouragement. I remain obdurately hopeful the COBOL front end will be deemed ready for gcc-15. The von Clausewitz test of any compiler is the real world. Users kicking the tires push us to improve the compiler in ways that are are practical to them. (Several features are now pending while we strive to meet reviewers' concerns.) To that end, I have also prepared release notes for the www repository under separate cover. Thank you for your kind consideration of our work. --jkl