Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* COBOL support in GDB
@ 2025-08-21  0:17 Robert Dubner
  2025-08-27 15:53 ` Andrew Burgess via Gdb
  2025-08-27 17:42 ` Thomas Dineen via Gdb
  0 siblings, 2 replies; 5+ messages in thread
From: Robert Dubner @ 2025-08-21  0:17 UTC (permalink / raw)
  To: gdb; +Cc: mheyman, jklowden

My name is Bob Dubner.  I live in upstate New York, in the United States.
I work for the Symas Corporation, which has an interest in COBOL-based
systems.  For the last several years I have been working along with my
colleagues Marty Herman and Jim Lowden to develop a COBOL front end for
the GCC compiler collection.

 

That front end, with much gratefully received assistance and support from
the GCC community during the incorporation phase, was released back in
March as part of GCC-15.1.

 

So, with GCC now able to compile COBOL, a natural next step is the
capability of debugging COBOL code.

 

About three years ago, we forked binutils-gdb on
https://gitlab.cobolworx.com/COBOLworx/gdb-cobol.  That's where I have
been developing support in GDB for the COBOL language as implemented in
GCC's COBOL front end.  I regularly merge the master branch of
git://sourceware.org/git/binutils-gdb.git into our fork, most recently
today.

 

I have the COBOL-aware debugger actually working.  Somebody who can
navigate the multiple gates of 

 

1) Access to an Ubuntu 22 or 24 system, 

2) A willingness to download and install the leading-edge COBOL compiler
from https://gitlab.cobolworx.com/COBOLworx/gcc-cobol/-/packages, 

3) A matching willingness to download and install the leading-edge
GDB-COBOL debugger from
https://gitlab.cobolworx.com/COBOLworx/gdb-cobol/-/packages

4) Actually caring enough about COBOL to go through steps 1 through 3

 

can then use the resulting installed gcobol compiler to compile a COBOL
program and then use gdb-cobol to debug it.  My intent, so far, is that
GDB users will not be surprised by what ordinary GDB commands do when
debugging a COBOL program.

 

I am writing here because it is my belief that we can at least start
talking about incorporating my cobol_language work into GDB.

 

It involves eight new files in the gdb directory, all named
"cobol-<something>".  There are some changes to code elsewhere in the gdb
subdirectory.

 

I anticipate that there will be a fair amount of polite interaction about
some of my changes that will, nonetheless, come from a place of "Why in
the name of all that is holy did you do THAT??!!"  

 

The answers to those perfectly valid questions will be rooted in two
places.  

 

First, COBOL is weird.  

 

Second, I didn't know any better.  

 

So, I need guidance on how to proceed.  Perhaps I should come up with a
patch that just installs the some of the cobol-xxx files, so that my work
can be evaluated?  I am sure there will be questions, and comments, and
protests that I will have to address.  

 

Or what?

 

Thank you very much for your consideration.

 

Bob Dubner


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: COBOL support in GDB
  2025-08-21  0:17 COBOL support in GDB Robert Dubner
@ 2025-08-27 15:53 ` Andrew Burgess via Gdb
  2025-09-02 13:04   ` Robert Dubner
  2025-08-27 17:42 ` Thomas Dineen via Gdb
  1 sibling, 1 reply; 5+ messages in thread
From: Andrew Burgess via Gdb @ 2025-08-27 15:53 UTC (permalink / raw)
  To: Robert Dubner, gdb; +Cc: mheyman, jklowden

Robert Dubner <rdubner@symas.com> writes:

> My name is Bob Dubner.  I live in upstate New York, in the United States.
> I work for the Symas Corporation, which has an interest in COBOL-based
> systems.  For the last several years I have been working along with my
> colleagues Marty Herman and Jim Lowden to develop a COBOL front end for
> the GCC compiler collection.
>
>  
>
> That front end, with much gratefully received assistance and support from
> the GCC community during the incorporation phase, was released back in
> March as part of GCC-15.1.
>
>  
>
> So, with GCC now able to compile COBOL, a natural next step is the
> capability of debugging COBOL code.
>
>  
>
> About three years ago, we forked binutils-gdb on
> https://gitlab.cobolworx.com/COBOLworx/gdb-cobol.  That's where I have
> been developing support in GDB for the COBOL language as implemented in
> GCC's COBOL front end.  I regularly merge the master branch of
> git://sourceware.org/git/binutils-gdb.git into our fork, most recently
> today.
>
>  
>
> I have the COBOL-aware debugger actually working.  Somebody who can
> navigate the multiple gates of 
>
>  
>
> 1) Access to an Ubuntu 22 or 24 system, 
>
> 2) A willingness to download and install the leading-edge COBOL compiler
> from https://gitlab.cobolworx.com/COBOLworx/gcc-cobol/-/packages, 
>
> 3) A matching willingness to download and install the leading-edge
> GDB-COBOL debugger from
> https://gitlab.cobolworx.com/COBOLworx/gdb-cobol/-/packages
>
> 4) Actually caring enough about COBOL to go through steps 1 through 3
>
>  
>
> can then use the resulting installed gcobol compiler to compile a COBOL
> program and then use gdb-cobol to debug it.  My intent, so far, is that
> GDB users will not be surprised by what ordinary GDB commands do when
> debugging a COBOL program.
>
>  
>
> I am writing here because it is my belief that we can at least start
> talking about incorporating my cobol_language work into GDB.
>
>  
>
> It involves eight new files in the gdb directory, all named
> "cobol-<something>".  There are some changes to code elsewhere in the gdb
> subdirectory.
>
>  
>
> I anticipate that there will be a fair amount of polite interaction about
> some of my changes that will, nonetheless, come from a place of "Why in
> the name of all that is holy did you do THAT??!!"  
>
>  
>
> The answers to those perfectly valid questions will be rooted in two
> places.  
>
>  
>
> First, COBOL is weird.  
>
>  
>
> Second, I didn't know any better.  
>
>  
>
> So, I need guidance on how to proceed.  Perhaps I should come up with a
> patch that just installs the some of the cobol-xxx files, so that my work
> can be evaluated?  I am sure there will be questions, and comments, and
> protests that I will have to address.  
>
>  
>
> Or what?

Hi!

I don't see why anyone would object to having COBOL support added to
GDB, especially as the COBOL frontend has been added to gcc.  I would
certainly have no objections.

I took a (very) quick look at you git repo, and you are correct to think
there is a bunch of stuff that's going to require some serious thought
for how to integrate nicely with current GDB.  I'm looking especially at
the language specific hooks into generic code step/next, breakpoint
creation, etc.

I haven't tried to seriously review any of this work, but I think you
should understand getting some of this merged might require wider
refactoring in order to try and keep core code relatively clean.  But
that's just a guess, I could be wrong.

For getting the code merged, or starting the review process, the first
step would be making sure there's a copyright assignment in place with
the FSF.  I guess you have this already for gcc?  But you should make
sure it also covers GDB, and if not, get the existing agreement
extended.

Got getting patches reviewed and merged, I think you need to break the
work down into the smallest set of changes possible.  Especially where
you're touching core code.  So, personally, for a new language, I'm less
bothered about large changes coming in to cobol-*.{c,h} files, as the
new language is, well, new.

But if you tried to land all your changes to breakpoint.c, infcmd.c,
infrun.c, location.c, etc, etc in one patch, I'm for sure going to ask
that to be broken apart so we can review one problem at a time.

Also tests.  We love testing in GDB, and I noticed your branch seemed a
little light on testing, so that'll need fixing for sure.

Thanks,
Andrew


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: COBOL support in GDB
  2025-08-21  0:17 COBOL support in GDB Robert Dubner
  2025-08-27 15:53 ` Andrew Burgess via Gdb
@ 2025-08-27 17:42 ` Thomas Dineen via Gdb
  2025-08-27 17:58   ` Guinevere Larsen via Gdb
  1 sibling, 1 reply; 5+ messages in thread
From: Thomas Dineen via Gdb @ 2025-08-27 17:42 UTC (permalink / raw)
  To: gdb

COBOL you must be kidding!



On 8/20/2025 5:17 PM, Robert Dubner wrote:
> My name is Bob Dubner.  I live in upstate New York, in the United States.
> I work for the Symas Corporation, which has an interest in COBOL-based
> systems.  For the last several years I have been working along with my
> colleagues Marty Herman and Jim Lowden to develop a COBOL front end for
> the GCC compiler collection.
>
>   
>
> That front end, with much gratefully received assistance and support from
> the GCC community during the incorporation phase, was released back in
> March as part of GCC-15.1.
>
>   
>
> So, with GCC now able to compile COBOL, a natural next step is the
> capability of debugging COBOL code.
>
>   
>
> About three years ago, we forked binutils-gdb on
> https://gitlab.cobolworx.com/COBOLworx/gdb-cobol.  That's where I have
> been developing support in GDB for the COBOL language as implemented in
> GCC's COBOL front end.  I regularly merge the master branch of
> git://sourceware.org/git/binutils-gdb.git into our fork, most recently
> today.
>
>   
>
> I have the COBOL-aware debugger actually working.  Somebody who can
> navigate the multiple gates of
>
>   
>
> 1) Access to an Ubuntu 22 or 24 system,
>
> 2) A willingness to download and install the leading-edge COBOL compiler
> from https://gitlab.cobolworx.com/COBOLworx/gcc-cobol/-/packages,
>
> 3) A matching willingness to download and install the leading-edge
> GDB-COBOL debugger from
> https://gitlab.cobolworx.com/COBOLworx/gdb-cobol/-/packages
>
> 4) Actually caring enough about COBOL to go through steps 1 through 3
>
>   
>
> can then use the resulting installed gcobol compiler to compile a COBOL
> program and then use gdb-cobol to debug it.  My intent, so far, is that
> GDB users will not be surprised by what ordinary GDB commands do when
> debugging a COBOL program.
>
>   
>
> I am writing here because it is my belief that we can at least start
> talking about incorporating my cobol_language work into GDB.
>
>   
>
> It involves eight new files in the gdb directory, all named
> "cobol-<something>".  There are some changes to code elsewhere in the gdb
> subdirectory.
>
>   
>
> I anticipate that there will be a fair amount of polite interaction about
> some of my changes that will, nonetheless, come from a place of "Why in
> the name of all that is holy did you do THAT??!!"
>
>   
>
> The answers to those perfectly valid questions will be rooted in two
> places.
>
>   
>
> First, COBOL is weird.
>
>   
>
> Second, I didn't know any better.
>
>   
>
> So, I need guidance on how to proceed.  Perhaps I should come up with a
> patch that just installs the some of the cobol-xxx files, so that my work
> can be evaluated?  I am sure there will be questions, and comments, and
> protests that I will have to address.
>
>   
>
> Or what?
>
>   
>
> Thank you very much for your consideration.
>
>   
>
> Bob Dubner
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: COBOL support in GDB
  2025-08-27 17:42 ` Thomas Dineen via Gdb
@ 2025-08-27 17:58   ` Guinevere Larsen via Gdb
  0 siblings, 0 replies; 5+ messages in thread
From: Guinevere Larsen via Gdb @ 2025-08-27 17:58 UTC (permalink / raw)
  To: Thomas Dineen, gdb

Hi.

That is not a very welcoming message to read as the second message Bob 
ever received in this community. If you are just genuinely surprised 
that someone is working with COBOL (or any other technology for that 
matter), I encourage you to be a little more careful with your wording, 
like "wow, I didn't know it was still this important" or "that is very 
surprising, but good luck".

The way your email is worded, it sounds rather dismissive of his efforts 
to add support, which makes the GDB community seem unapproachable.

-- 
Cheers,
Guinevere Larsen
It/she


On 8/27/25 2:42 PM, Thomas Dineen via Gdb wrote:
> COBOL you must be kidding!
>
>
>
> On 8/20/2025 5:17 PM, Robert Dubner wrote:
>> My name is Bob Dubner.  I live in upstate New York, in the United 
>> States.
>> I work for the Symas Corporation, which has an interest in COBOL-based
>> systems.  For the last several years I have been working along with my
>> colleagues Marty Herman and Jim Lowden to develop a COBOL front end for
>> the GCC compiler collection.
>>
>>
>> That front end, with much gratefully received assistance and support 
>> from
>> the GCC community during the incorporation phase, was released back in
>> March as part of GCC-15.1.
>>
>>
>> So, with GCC now able to compile COBOL, a natural next step is the
>> capability of debugging COBOL code.
>>
>>
>> About three years ago, we forked binutils-gdb on
>> https://gitlab.cobolworx.com/COBOLworx/gdb-cobol.  That's where I have
>> been developing support in GDB for the COBOL language as implemented in
>> GCC's COBOL front end.  I regularly merge the master branch of
>> git://sourceware.org/git/binutils-gdb.git into our fork, most recently
>> today.
>>
>>
>> I have the COBOL-aware debugger actually working.  Somebody who can
>> navigate the multiple gates of
>>
>>
>> 1) Access to an Ubuntu 22 or 24 system,
>>
>> 2) A willingness to download and install the leading-edge COBOL compiler
>> from https://gitlab.cobolworx.com/COBOLworx/gcc-cobol/-/packages,
>>
>> 3) A matching willingness to download and install the leading-edge
>> GDB-COBOL debugger from
>> https://gitlab.cobolworx.com/COBOLworx/gdb-cobol/-/packages
>>
>> 4) Actually caring enough about COBOL to go through steps 1 through 3
>>
>>
>> can then use the resulting installed gcobol compiler to compile a COBOL
>> program and then use gdb-cobol to debug it.  My intent, so far, is that
>> GDB users will not be surprised by what ordinary GDB commands do when
>> debugging a COBOL program.
>>
>>
>> I am writing here because it is my belief that we can at least start
>> talking about incorporating my cobol_language work into GDB.
>>
>>
>> It involves eight new files in the gdb directory, all named
>> "cobol-<something>".  There are some changes to code elsewhere in the 
>> gdb
>> subdirectory.
>>
>>
>> I anticipate that there will be a fair amount of polite interaction 
>> about
>> some of my changes that will, nonetheless, come from a place of "Why in
>> the name of all that is holy did you do THAT??!!"
>>
>>
>> The answers to those perfectly valid questions will be rooted in two
>> places.
>>
>>
>> First, COBOL is weird.
>>
>>
>> Second, I didn't know any better.
>>
>>
>> So, I need guidance on how to proceed.  Perhaps I should come up with a
>> patch that just installs the some of the cobol-xxx files, so that my 
>> work
>> can be evaluated?  I am sure there will be questions, and comments, and
>> protests that I will have to address.
>>
>>
>> Or what?
>>
>>
>> Thank you very much for your consideration.
>>
>>
>> Bob Dubner
>>
>


^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: COBOL support in GDB
  2025-08-27 15:53 ` Andrew Burgess via Gdb
@ 2025-09-02 13:04   ` Robert Dubner
  0 siblings, 0 replies; 5+ messages in thread
From: Robert Dubner @ 2025-09-02 13:04 UTC (permalink / raw)
  To: Andrew Burgess, gdb; +Cc: mheyman, jklowden



> -----Original Message-----
> From: Andrew Burgess <aburgess@redhat.com>
> Sent: Wednesday, August 27, 2025 11:54
> To: Robert Dubner <rdubner@symas.com>; gdb@sourceware.org
> Cc: mheyman <mheyman@symas.com>; jklowden@cobolworx.com
> Subject: Re: COBOL support in GDB
> 
> Robert Dubner <rdubner@symas.com> writes:
> 
> > My name is Bob Dubner.  I live in upstate New York, in the United
States.
> > I work for the Symas Corporation, which has an interest in COBOL-based
> > systems.  For the last several years I have been working along with my
> > colleagues Marty Herman and Jim Lowden to develop a COBOL front end
for
> > the GCC compiler collection.
> >
> >
> >
> > That front end, with much gratefully received assistance and support
from
> > the GCC community during the incorporation phase, was released back in
> > March as part of GCC-15.1.
> >
> >
> >
> > So, with GCC now able to compile COBOL, a natural next step is the
> > capability of debugging COBOL code.
> >
> >
> >
> > About three years ago, we forked binutils-gdb on
> > https://gitlab.cobolworx.com/COBOLworx/gdb-cobol.  That's where I have
> > been developing support in GDB for the COBOL language as implemented
in
> > GCC's COBOL front end.  I regularly merge the master branch of
> > git://sourceware.org/git/binutils-gdb.git into our fork, most recently
> > today.
> >
> >
> >
> > I have the COBOL-aware debugger actually working.  Somebody who can
> > navigate the multiple gates of
> >
> >
> >
> > 1) Access to an Ubuntu 22 or 24 system,
> >
> > 2) A willingness to download and install the leading-edge COBOL
compiler
> > from https://gitlab.cobolworx.com/COBOLworx/gcc-cobol/-/packages,
> >
> > 3) A matching willingness to download and install the leading-edge
> > GDB-COBOL debugger from
> > https://gitlab.cobolworx.com/COBOLworx/gdb-cobol/-/packages
> >
> > 4) Actually caring enough about COBOL to go through steps 1 through 3
> >
> >
> >
> > can then use the resulting installed gcobol compiler to compile a
COBOL
> > program and then use gdb-cobol to debug it.  My intent, so far, is
that
> > GDB users will not be surprised by what ordinary GDB commands do when
> > debugging a COBOL program.
> >
> >
> >
> > I am writing here because it is my belief that we can at least start
> > talking about incorporating my cobol_language work into GDB.
> >
> >
> >
> > It involves eight new files in the gdb directory, all named
> > "cobol-<something>".  There are some changes to code elsewhere in the
gdb
> > subdirectory.
> >
> >
> >
> > I anticipate that there will be a fair amount of polite interaction
about
> > some of my changes that will, nonetheless, come from a place of "Why
in
> > the name of all that is holy did you do THAT??!!"
> >
> >
> >
> > The answers to those perfectly valid questions will be rooted in two
> > places.
> >
> >
> >
> > First, COBOL is weird.
> >
> >
> >
> > Second, I didn't know any better.
> >
> >
> >
> > So, I need guidance on how to proceed.  Perhaps I should come up with
a
> > patch that just installs the some of the cobol-xxx files, so that my
work
> > can be evaluated?  I am sure there will be questions, and comments,
and
> > protests that I will have to address.
> >
> >
> >
> > Or what?
> 
> Hi!
> 
> I don't see why anyone would object to having COBOL support added to
> GDB, especially as the COBOL frontend has been added to gcc.  I would
> certainly have no objections.
> 
> I took a (very) quick look at you git repo, and you are correct to think
> there is a bunch of stuff that's going to require some serious thought
> for how to integrate nicely with current GDB.  I'm looking especially at
> the language specific hooks into generic code step/next, breakpoint
> creation, etc.
> 
> I haven't tried to seriously review any of this work, but I think you
> should understand getting some of this merged might require wider
> refactoring in order to try and keep core code relatively clean.  But
> that's just a guess, I could be wrong.
> 
> For getting the code merged, or starting the review process, the first
> step would be making sure there's a copyright assignment in place with
> the FSF.  I guess you have this already for gcc?  But you should make
> sure it also covers GDB, and if not, get the existing agreement
> extended.
> 
> Got getting patches reviewed and merged, I think you need to break the
> work down into the smallest set of changes possible.  Especially where
> you're touching core code.  So, personally, for a new language, I'm less
> bothered about large changes coming in to cobol-*.{c,h} files, as the
> new language is, well, new.
> 
> But if you tried to land all your changes to breakpoint.c, infcmd.c,
> infrun.c, location.c, etc, etc in one patch, I'm for sure going to ask
> that to be broken apart so we can review one problem at a time.
> 
> Also tests.  We love testing in GDB, and I noticed your branch seemed a
> little light on testing, so that'll need fixing for sure.

Thanks for responding, and thanks very much for starting to look into it.

The first thing I am going to have to do is remind myself to sit on my
hands.  I tend to try to work very quickly, and this effort simply won't
go quickly.  Anybody familiar with GDB who might get interested in this
COBOL effort will have a bunch of counter-intuitive things to absorb, and
that'll take time.

Hell, this is COBOL.  "Counter-intuitive" doesn't really describe it.
"Anti-intuitive" might be better.

I do hear you, loud and clear.

When I started to look at my existing GDB changes with an eye towards
figuring out how to incrementally introduce it to the GDB community, I
realized that there is stuff in there that is clumsy, stuff that is
sloppy, and stuff that just plain doesn't work.  So, I am going to spend
the next few days trying to at least fix the stuff that doesn't work
before trying to introduce patches.

I completely agree that the "if( current_language() == language_cobol )"
stuff I've been sprinkling in the core code is unsightly and distracting.
I look forward to having conversations about why I did it, and what might
be done about it.

Testing:  I do have the beginning of Dubner-flavored regression testing;
it's found in gdb/gcobol/UAT.  The immediate challenge there is going to
be the ongoing need for the version of COBOL-enabled GCC to be compatible
with the version of GDB-COBOL.  I am still at a point where to make things
work in GDB-COBOL, I sometimes have to tweak the executable code that is
generated by GCC.  

I do not, however, have anything that is based on the GDB testing model.
(There is a limit to the number of seemingly vertical learning curves I
feel able to take on at any one time.)

The FSF already has on file both a copyright assigment specifically for my
work on GDB, and a release from the Symas Corporation for such work.

Thanks very much.  These messages are exactly what I needed.  You have
advanced me from "What the heck do I do now?" to "Oh, look:  There is
murky path forward."  That's no small thing.

Bob Dubner.



> 
> Thanks,
> Andrew


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-09-02 13:05 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-08-21  0:17 COBOL support in GDB Robert Dubner
2025-08-27 15:53 ` Andrew Burgess via Gdb
2025-09-02 13:04   ` Robert Dubner
2025-08-27 17:42 ` Thomas Dineen via Gdb
2025-08-27 17:58   ` Guinevere Larsen via Gdb

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox