Re: GDB/MI snapshots between major release's

Bob Rossi
2004-10-04T21:27:23Z

On Mon, Oct 04, 2004 at 01:53:57PM -0700, Felix Lee wrote:
> Bob Rossi <bob@brasko.net>:
> > T1 GDB 7.0 has MI10 (official)
> > T2 GDB 7.0-CVS has MI11 (unofficial, because of MI incompatible change X1 )
> > T3 GDB 7.0-CVS has MI11 (unofficial, because of MI incompatible change X2 )
> > T4 GDB 7.1 has MI11 (official)
>
> why would that happen? I expect 'create a new MI version' to be
> basically an atomic change. like, someone experiments with MI11
> on a branch, then merges it into the trunk when it's stable and
> tests reasonable cleanly.

This is frustrating to me, does anyone understand the problem that I am
describing? Maybe it could be said in a better way.

Basically, a given GDB (from an official release) supports several MI protocols.
A given GDB from a CVS snapshot supports several MI protocols and 1
unsupported protocol.

The 1 unsupported protocol is the problem.

During development, the first incompatible change forces the MI version
number to be bumped. Every incompatible change after that does not
effect the MI version number. Only after the release can the number be
bumped again (as far as I understand it).

Once the development GDB reaches maturity and becomes an official release,
the development protocol becomes an official protocol. That new MI protocol could
consist of say 10 incompatible changes with it's predecessor.

Any CVS snapshot after the first incompatible change (version bump) and
before the release will have GDB talking an MI protocol that is not
supported by anyone. It is a development protocol that should never be
used.

I am saying that I need to know if GDB is communicating with one of
these development MI protocols, because I want to use the last official
MI protocol, not a development MI protocol.

Do you understand?

Thanks,
Bob Rossi