* mdebugread.c (parse_partial_symbols): Fix 64-bit
authorMark Alexander <marka@cygnus>
Tue, 22 Oct 1996 01:26:20 +0000 (01:26 +0000)
committerMark Alexander <marka@cygnus>
Tue, 22 Oct 1996 01:26:20 +0000 (01:26 +0000)
sign-extension problems in calculating psymtab addresses.
* buildsym.c (end_symtab): Use macro to pop context.

gdb/ChangeLog
gdb/buildsym.c
gdb/mdebugread.c

index dc0af83596c21de8a22b1b1e4d1a4360d0870dbd..b13a267bddf72b0034e2991db8941eb90ea22096 100644 (file)
@@ -1,3 +1,9 @@
+Mon Oct 21 18:17:08 1996  Mark Alexander  <marka@cygnus.com>
+
+       * mdebugread.c (parse_partial_symbols): Fix 64-bit
+       sign-extension problems in calculating psymtab addresses.
+       * buildsym.c (end_symtab): Use macro to pop context.
+
 Mon Oct 21 14:40:50 1996  Stu Grossman  (grossman@critters.cygnus.com)
 
        * v850-tdep.c:  Cleanup lots of things.  Add many comments.
index 02d7dfc0c9193b216afc3a5b4b8c26250c8fe328..a80a8ffb76d8e0a0fcb6aa864b9d1c0a40ecb061 100644 (file)
@@ -811,8 +811,7 @@ end_symtab (end_addr, objfile, section)
 
   if (context_stack_depth > 0)
     {
-      context_stack_depth--;
-      cstk = &context_stack[context_stack_depth];
+      cstk = pop_context();
       /* Make a block for the local symbols within.  */
       finish_block (cstk->name, &local_symbols, cstk->old_blocks,
                    cstk->start_addr, end_addr, objfile);
index 49db55778a900ed9381e04a699e3038b479124da..3f67503e1513e21583babdee2d261b86a0240197 100644 (file)
@@ -2567,7 +2567,7 @@ parse_partial_symbols (objfile, section_offsets)
                {
                  if (sh.st == stProc || sh.st == stStaticProc)
                    {
-                     long procaddr;
+                     CORE_ADDR procaddr;
                      long isym;
        
                      sh.value += ANOFFSET (section_offsets, SECT_OFF_TEXT);
@@ -2594,7 +2594,7 @@ parse_partial_symbols (objfile, section_offsets)
                                      &sh);
                      if (sh.st == stEnd)
                        {
-                         long high = procaddr + sh.value;
+                         CORE_ADDR high = procaddr + sh.value;
 
                          /* Kludge for Irix 5.2 zero fh->adr.  */
                          if (!relocatable
@@ -2708,8 +2708,8 @@ parse_partial_symbols (objfile, section_offsets)
 
              switch (sh.st)
                {
-                 long high;
-                 long procaddr;
+                 CORE_ADDR high;
+                 CORE_ADDR procaddr;
                  int new_sdx;
 
                case stStaticProc: