94 lines
4.5 KiB
HTML
94 lines
4.5 KiB
HTML
<HTML>
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<!-- Created on March, 13 2002 by texi2html 1.64 -->
|
|
<!--
|
|
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
|
|
Karl Berry <karl@freefriends.org>
|
|
Olaf Bachmann <obachman@mathematik.uni-kl.de>
|
|
and many others.
|
|
Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de>
|
|
Send bugs and suggestions to <texi2html@mathematik.uni-kl.de>
|
|
|
|
-->
|
|
<HEAD>
|
|
<TITLE>STABS: Questions</TITLE>
|
|
|
|
<META NAME="description" CONTENT="STABS: Questions">
|
|
<META NAME="keywords" CONTENT="STABS: Questions">
|
|
<META NAME="resource-type" CONTENT="document">
|
|
<META NAME="distribution" CONTENT="global">
|
|
<META NAME="Generator" CONTENT="texi2html 1.64">
|
|
|
|
</HEAD>
|
|
|
|
<BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000">
|
|
|
|
<A NAME="SEC86"></A>
|
|
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
|
|
<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs_11.html#SEC85"> < </A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs_13.html#SEC87"> > </A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs_13.html#SEC87"> << </A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs.html#SEC_Top"> Up </A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs_13.html#SEC87"> >> </A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs.html#SEC_Top">Top</A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs_toc.html#SEC_Contents">Contents</A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs_14.html#SEC90">Index</A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs_abt.html#SEC_About"> ? </A>]</TD>
|
|
</TR></TABLE>
|
|
<H1> E. Questions and Anomalies </H1>
|
|
<!--docid::SEC86::-->
|
|
<P>
|
|
|
|
<UL>
|
|
<LI>
|
|
For GNU C stabs defining local and global variables (<CODE>N_LSYM</CODE> and
|
|
<CODE>N_GSYM</CODE>), the desc field is supposed to contain the source
|
|
line number on which the variable is defined. In reality the desc
|
|
field is always 0. (This behavior is defined in <TT>`dbxout.c'</TT> and
|
|
putting a line number in desc is controlled by <SAMP>`#ifdef
|
|
WINNING_GDB'</SAMP>, which defaults to false). GDB supposedly uses this
|
|
information if you say <SAMP>`list <VAR>var</VAR>'</SAMP>. In reality, <VAR>var</VAR> can
|
|
be a variable defined in the program and GDB says <SAMP>`function
|
|
<VAR>var</VAR> not defined'</SAMP>.
|
|
<P>
|
|
|
|
<LI>
|
|
In GNU C stabs, there seems to be no way to differentiate tag types:
|
|
structures, unions, and enums (symbol descriptor <SAMP>`T'</SAMP>) and typedefs
|
|
(symbol descriptor <SAMP>`t'</SAMP>) defined at file scope from types defined locally
|
|
to a procedure or other more local scope. They all use the <CODE>N_LSYM</CODE>
|
|
stab type. Types defined at procedure scope are emitted after the
|
|
<CODE>N_RBRAC</CODE> of the preceding function and before the code of the
|
|
procedure in which they are defined. This is exactly the same as
|
|
types defined in the source file between the two procedure bodies.
|
|
GDB over-compensates by placing all types in block #1, the block for
|
|
symbols of file scope. This is true for default, <SAMP>`-ansi'</SAMP> and
|
|
<SAMP>`-traditional'</SAMP> compiler options. (Bugs gcc/1063, gdb/1066.)
|
|
<P>
|
|
|
|
<LI>
|
|
What ends the procedure scope? Is it the proc block's <CODE>N_RBRAC</CODE> or the
|
|
next <CODE>N_FUN</CODE>? (I believe its the first.)
|
|
</UL>
|
|
<P>
|
|
|
|
<A NAME="Stab Sections"></A>
|
|
<HR SIZE="6">
|
|
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
|
|
<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs_13.html#SEC87"> << </A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs_13.html#SEC87"> >> </A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs.html#SEC_Top">Top</A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs_toc.html#SEC_Contents">Contents</A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs_14.html#SEC90">Index</A>]</TD>
|
|
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="stabs_abt.html#SEC_About"> ? </A>]</TD>
|
|
</TR></TABLE>
|
|
<BR>
|
|
<FONT SIZE="-1">
|
|
This document was generated
|
|
by <I>GDB Administrator</I> on <I>March, 13 2002</I>
|
|
using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
|
|
"><I>texi2html</I></A>
|
|
|
|
</BODY>
|
|
</HTML>
|