]> git.sur5r.net Git - cc65/commitdiff
Make the type of a C symbol available.
authoruz <uz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Thu, 1 Sep 2011 20:53:42 +0000 (20:53 +0000)
committeruz <uz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Thu, 1 Sep 2011 20:53:42 +0000 (20:53 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@5295 b7a2c559-68d2-44c3-8de9-860c34a00d81

src/dbginfo/dbginfo.c
src/dbginfo/dbginfo.h
src/dbginfo/dbgsh.c

index 249bdcd0459c09f5f2070206aff2132e219a658a..f7d517c360eea2af7f3f4cb49d304a7eee463812 100644 (file)
@@ -1233,6 +1233,7 @@ static void CopyCSymInfo (cc65_csymdata* D, const CSymInfo* S)
     D->csym_kind    = S->Kind;
     D->csym_sc      = S->SC;
     D->csym_offs    = S->Offs;
+    D->type_id      = GetId (S->Type.Info);
     D->symbol_id    = GetId (S->Sym.Info);
     D->scope_id     = GetId (S->Scope.Info);
     D->csym_name    = S->Name;
index aa357a4ba572a599533ea83dcd4eaca22a4fddd1..c444a5168e3a81cdaae336d984188eab0a452f79 100644 (file)
@@ -135,6 +135,7 @@ struct cc65_csymdata {
     unsigned char       csym_kind;      /* Kind of c symbol */
     unsigned char       csym_sc;        /* Storage class of c symbol */
     int                 csym_offs;      /* Offset for auto and register */
+    unsigned            type_id;        /* Id of the data type */ 
     unsigned            symbol_id;      /* Attached asm symbol if any */
     unsigned            scope_id;       /* Scope of c symbol */
     const char*         csym_name;      /* Name of the symbol */
index 48b042616582a7ba45f8bc3b6f70796ee3b77baf..4c2e3d79ae86d1f65e4b52987741614c8ce8475d 100644 (file)
@@ -591,7 +591,7 @@ static void PrintCSymbols (const cc65_csyminfo* S)
     for (I = 0, D = S->data; I < S->count; ++I, ++D) {
         PrintId (D->csym_id, 6);
         Print ("%-28s", D->csym_name);
-        PrintId (0, 6);
+        PrintId (D->type_id, 6);
         PrintNumber (D->csym_kind, 4, 6);
         PrintNumber (D->csym_sc, 4, 6);
         PrintNumber (D->csym_offs, 4, 8);
@@ -1100,7 +1100,7 @@ static void CmdShowCSymbol (Collection* Args)
                 switch (IdType) {
                     case CSymbolId:
                         S = cc65_csym_byid (Info, Id);
-                        break;   
+                        break;
                     case ScopeId:
                         S = cc65_csym_byscope (Info, Id);
                         break;