* stabsread.c (define_symbol): When combining a LOC_ARG and a
authorJim Kingdon <jkingdon@engr.sgi.com>
Wed, 20 Oct 1993 23:45:13 +0000 (23:45 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Wed, 20 Oct 1993 23:45:13 +0000 (23:45 +0000)
LOC_REGISTER, use the type from the LOC_REGISTER, not from the
LOC_ARG.

gdb/ChangeLog
gdb/stabsread.c

index 1571ef78ecfa601ab61dc525e3f807d2ccd86d82..eafceeef524a2ba0551889faed7c4b0e7d3de3ea 100644 (file)
@@ -1,3 +1,9 @@
+Wed Oct 20 11:35:43 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
+
+       * 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.
+
 Wed Oct 20 14:34:38 1993  K. Richard Pixley  (rich@sendai.cygnus.com)
 
        * config/i386/xm-go32.h: define some signals if they aren't
index f7b817eff2345d86ec23f246a1ed01f2c8d1881a..bee0cd36d45dad7c5a15e4896ab1f86956ad0e40 100644 (file)
@@ -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;