Re: [commit] Deprecate remaining STREQ uses

Andrew Cagney
2003-11-24T16:41:41Z

> Date: Sun, 23 Nov 2003 15:34:51 -0500
>> From: Andrew Cagney <cagney@gnu.org>
>>
>> This patch deprecates remaining STREQ and STREQ uses. These are the
>> ones that weren't covered by my testing GDB on a stabs system. It is
>> worth noting that the bulk occure in language specific files - this
>> suggests an area that needs improved testsuite coverage.
>
>
> Sorry, I don't get the rationale for renaming STR* into
> DEPRECATED_STR*. Are we going to throw away the code that used
> STREQN/STREQ? If not, I don't see any good reasons to do this, as
> renaming the macro doesn't get us any closer to the goal of replacing
> them with a simple call to the appropriate str* function.
>
> Could you please explain why the renaming is a good idea?

Note that I'm renaming the _remaining_ STR*s and not all references. I
previously went through GDB's source code and replaced every occurance
of STREQ* that is covered(1) by GDB's testsuite (or was in #ifdef 0
code). Since the before/after results were identical, I'm pretty sure
those changes were ok.

Unfortunatly that still leaves GDB containing a notable number of STREQ
references:
49 ada-lang.c
8 xcoffread.c
7 coffread.c
7 mdebugread.c
6 dbxread.c
6 rs6000-nat.c
5 p-typeprint.c
4 language.c
4 mipsread.c
3 dwarfread.c
3 mcore-rom.c
2 dwarf2read.c
2 eval.c
2 exec.c
2 f-lang.c
2 hpread.c
2 source.c
1 environ.c
1 hppa-tdep.c
1 objfiles.c
1 p-valprint.c
1 sparc-tdep.c
1 stack.c
1 target.c
While I could blindly transform those remaining references, such an
operation would be untested and consequently runs the very real risk of
introducing bugs (remember my test run didn't cover them). Consequently
they've been deprecated.

Per the weekend(2), they'll later be removed.

enjoy,
Andrew

(1) Using gcov.
(2) Check todays ARI (http://sources.redhat.com/gdb/current/ari) and
you'll see a number of items have hit zero reference counts.