This is the mail archive of the gdb-prs@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: breakpoints/1052: GDB 5.3 (macro supporting) - macro value is string without quotes.


The following reply was made to PR breakpoints/1052; it has been noted by GNATS.

From: "Gvozdeva, Svetlana" <Svetlana_Gvozdeva@stl.sarov.ru>
To: "'Daniel Jacobowitz'" <drow@mvista.com>
Cc: gdb-gnats@sources.redhat.com, miwako.tokugawa@intel.com
Subject: RE: breakpoints/1052: GDB 5.3 (macro supporting) - macro value is
	 string without quotes.
Date: Thu, 13 Feb 2003 08:47:58 +0300

 Hello, Daniel.
 
 I think that it is not correct (I meant both 1052 && 1053).
 If there is limit for printing of macro values then GDB's help should
 contain information about it.
 Right now I do  not see this information in help.
 
 As I see GDB performs macro substitution in whole command line (that is why
 we get bad command line).
 But I think that command 'print' should print value for all kinds of macros.
 
 First phase can be to find if command argument is exist (variable or macro
 symbol) and second phase can be printing of macro value if argument is macro
 symbol.
 I think that printing of macro should be the similar to printing of
 variable. If variable is visible then it should be variable value. If macro
 is visible then it should be macro value.
 
 As I see GDB prints 'p 234' without problem but symbol '234' is not variable
 or macro symbol or other symbol.
 
 Thank you.
 Good bye.
 Svetlana.
 
 -----Original Message-----
 From: Daniel Jacobowitz [mailto:drow@mvista.com]
 Sent: Wednesday, February 12, 2003 6:16 PM
 To: Gvozdeva, Svetlana
 Cc: gdb-gnats@sources.redhat.com; miwako.tokugawa@intel.com
 Subject: Re: breakpoints/1052: GDB 5.3 (macro supporting) - macro value
 is string without quotes.
 
 
 On Wed, Feb 12, 2003 at 08:28:47AM -0000, sana@stl.sarov.ru wrote:
 > 
 > >Number:         1052
 > >Category:       breakpoints
 > >Synopsis:       GDB 5.3 (macro supporting) - macro value is string
 without quotes.
 > >Confidential:   no
 > >Severity:       serious
 > >Priority:       high
 > >Responsible:    unassigned
 > >State:          open
 > >Class:          sw-bug
 > >Submitter-Id:   net
 > >Arrival-Date:   Wed Feb 12 08:38:00 UTC 2003
 > >Closed-Date:
 > >Last-Modified:
 > >Originator:     sana@stl.sarov.ru
 > >Release:        unknown-1.0
 > >Organization:
 > >Environment:
 > 32-bit and 64-bit Linux, GDB 5.3
 > >Description:
 > GDB 5.3 supports work with section .debug_macinfo.
 > During testing it has been found out that GDB 5.3 has problem with
 printing of macro symbols whose value is string without quotes.
 > But it is usual parctice to use such values.
 > 
 > tets.c:
 > 
 > #define PREFIX    small 
 > main()
 > {
 > int PREFIX_i = 10, PREFIX_j;
 > 
 > PREFIX_j = abs(PREFIX_i);
 > return;
 > }
 > 
 > 
 > GDB's output for this test is:
 > 
 > This GDB was configured as "i686-pc-linux-gnu"...
 > (gdb) b main
 > Breakpoint 1 at 0x8048aef: file test2.c, line 4.
 > (gdb) r
 > Starting program: /home1/sana/macro/tr/a.out 
 > 
 > Breakpoint 1, main () at test2.c:4
 > 4       int PREFIX_i = 10, PREFIX_j;
 > (gdb) p PREFIX
 > No symbol "small" in current context.
 > (gdb) 
 
 Same question as for your other report - why do you think this is a
 bug, and what do you expect GDB to do when you say "p PREFIX"?  "macro
 expand PREFIX" will work, but "PREFIX" as an expression is a syntax
 error because small is undeclared.
 
 
 -- 
 Daniel Jacobowitz
 MontaVista Software                         Debian GNU/Linux Developer


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]