https://www.phoronix.com/news/134k-Lines-v2-COBOL-For-GCC
Более 134 тысяч строк кода было добавлено/изменено в недавнем наборе патчей, который добавляет фронт энд языка COBOL в набор компиляторов GCC.
А ты достаточно стар, чтобы оценить это? Тебе приходилось программировать на Коболе? Мне не приходилось, хотя однажды ненадолго попал в такой проект, где был и Кобол.
Цитата с https://gcc.gnu.org/pipermail/gcc-patches/2025-February/675873.html
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