Author: markj
Date: Wed Aug 31 01:27:30 2016
New Revision: 305106
URL: https://svnweb.freebsd.org/changeset/base/305106

Log:
  MFC r304055:
  Fix handling of forward enum declarations in the CTF tools.

Modified:
  stable/10/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c
  stable/10/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c
==============================================================================
--- stable/10/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c    Wed Aug 31 
01:26:21 2016        (r305105)
+++ stable/10/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c    Wed Aug 31 
01:27:30 2016        (r305106)
@@ -807,6 +807,11 @@ die_enum_create(dwarf_t *dw, Dwarf_Die d
        Dwarf_Unsigned uval;
        Dwarf_Signed sval;
 
+       if (die_isdecl(dw, die)) {
+               tdp->t_type = FORWARD;
+               return;
+       }
+
        debug(3, "die %llu: creating enum\n", off);
 
        tdp->t_type = ENUM;

Modified: stable/10/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c
==============================================================================
--- stable/10/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c    Wed Aug 31 
01:26:21 2016        (r305105)
+++ stable/10/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c    Wed Aug 31 
01:27:30 2016        (r305106)
@@ -348,7 +348,8 @@ fwd_equiv(tdesc_t *ctdp, tdesc_t *mtdp)
 {
        tdesc_t *defn = (ctdp->t_type == FORWARD ? mtdp : ctdp);
 
-       return (defn->t_type == STRUCT || defn->t_type == UNION);
+       return (defn->t_type == STRUCT || defn->t_type == UNION ||
+           defn->t_type == ENUM);
 }
 
 static int
_______________________________________________
svn-src-stable-10@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10
To unsubscribe, send any mail to "svn-src-stable-10-unsubscr...@freebsd.org"

Reply via email to