svn commit: r304055 - head/cddl/contrib/opensolaris/tools/ctf/cvt
Mark Johnston
markj at FreeBSD.org
Sat Aug 13 19:51:02 UTC 2016
Author: markj
Date: Sat Aug 13 19:51:00 2016
New Revision: 304055
URL: https://svnweb.freebsd.org/changeset/base/304055
Log:
Fix handling of forward enum declarations in the CTF tools.
Reported by: mmacy
MFC after: 2 weeks
Modified:
head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c
head/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c
Modified: head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c
==============================================================================
--- head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c Sat Aug 13 19:49:32 2016 (r304054)
+++ head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c Sat Aug 13 19:51:00 2016 (r304055)
@@ -816,6 +816,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: head/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c
==============================================================================
--- head/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c Sat Aug 13 19:49:32 2016 (r304054)
+++ head/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c Sat Aug 13 19:51:00 2016 (r304055)
@@ -338,7 +338,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
More information about the svn-src-head
mailing list