aboutsummaryrefslogtreecommitdiff
path: root/gdb/stabsread.c
diff options
context:
space:
mode:
authorJim Kingdon <jkingdon@engr.sgi.com>1993-10-20 23:45:13 +0000
committerJim Kingdon <jkingdon@engr.sgi.com>1993-10-20 23:45:13 +0000
commitfc81adb803b6f43bc80ebb049472b660bd2e33fa (patch)
tree3e0cf63aef950073989c13e65a06a3cbb6f39415 /gdb/stabsread.c
parent9ab86fa36e1cef4b9e6d97a64a5cc2ecf5062591 (diff)
downloadgdb-fc81adb803b6f43bc80ebb049472b660bd2e33fa.zip
gdb-fc81adb803b6f43bc80ebb049472b660bd2e33fa.tar.gz
gdb-fc81adb803b6f43bc80ebb049472b660bd2e33fa.tar.bz2
* stabsread.c (define_symbol): When combining a LOC_ARG and a
LOC_REGISTER, use the type from the LOC_REGISTER, not from the LOC_ARG.
Diffstat (limited to 'gdb/stabsread.c')
-rw-r--r--gdb/stabsread.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gdb/stabsread.c b/gdb/stabsread.c
index f7b817e..bee0cd3 100644
--- a/gdb/stabsread.c
+++ b/gdb/stabsread.c
@@ -948,6 +948,9 @@ define_symbol (valu, string, desc, type, objfile)
&& STREQ (SYMBOL_NAME (prev_sym), SYMBOL_NAME(sym)))
{
SYMBOL_CLASS (prev_sym) = LOC_REGPARM;
+ /* Use the type from the LOC_REGISTER; that is the type
+ that is actually in that register. */
+ SYMBOL_TYPE (prev_sym) = SYMBOL_TYPE (sym);
SYMBOL_VALUE (prev_sym) = SYMBOL_VALUE (sym);
sym = prev_sym;
break;