From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2071 invoked by alias); 28 Jan 2008 22:01:02 -0000 Received: (qmail 2046 invoked by uid 440); 28 Jan 2008 22:01:02 -0000 Date: Mon, 28 Jan 2008 22:01:00 -0000 Message-ID: <20080128220102.2031.qmail@sourceware.org> From: scox@sourceware.org To: frysk-cvs@sourceware.org Subject: [SCM] master: Handle "typedef void" (bug 5669). X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: 2dba4bb8b5ef15d14c6716804b4a9c32d9632166 X-Git-Newrev: d13d270db639ffc6eb17e537380ef01496d49f91 Mailing-List: contact frysk-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: frysk-cvs-owner@sourceware.org Reply-To: frysk@sourceware.org X-SW-Source: 2008-q1/txt/msg00139.txt.bz2 The branch, master has been updated via d13d270db639ffc6eb17e537380ef01496d49f91 (commit) from 2dba4bb8b5ef15d14c6716804b4a9c32d9632166 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit d13d270db639ffc6eb17e537380ef01496d49f91 Author: Stan Cox Date: Mon Jan 28 16:52:50 2008 -0500 Handle "typedef void" (bug 5669). * TypeEntry.java (getType): DwTag.TYPEDEF_: Handle "typedef void" * gen-type-funit-tests.py (main): Add ptr_void_type_var. ----------------------------------------------------------------------- Summary of changes: frysk-core/frysk/debuginfo/ChangeLog | 4 ++++ frysk-core/frysk/debuginfo/TypeEntry.java | 6 +++++- frysk-core/frysk/pkglibdir/ChangeLog | 4 ++++ frysk-core/frysk/pkglibdir/gen-type-funit-tests.py | 5 ++++- 4 files changed, 17 insertions(+), 2 deletions(-) First 500 lines of diff: diff --git a/frysk-core/frysk/debuginfo/ChangeLog b/frysk-core/frysk/debuginfo/ChangeLog index 0bf997c..1356c25 100644 --- a/frysk-core/frysk/debuginfo/ChangeLog +++ b/frysk-core/frysk/debuginfo/ChangeLog @@ -1,3 +1,7 @@ +2008-01-28 Stan Cox + + * TypeEntry.java (getType): DwTag.TYPEDEF_: Handle "typedef void" + 2008-01-24 swagiaal * DebugInfoFrame.java: Fix for NullPointerException diff --git a/frysk-core/frysk/debuginfo/TypeEntry.java b/frysk-core/frysk/debuginfo/TypeEntry.java index 342c34f..9633642 100644 --- a/frysk-core/frysk/debuginfo/TypeEntry.java +++ b/frysk-core/frysk/debuginfo/TypeEntry.java @@ -437,7 +437,11 @@ public class TypeEntry { switch (type.getTag().hashCode()) { case DwTag.TYPEDEF_: - returnType = new TypeDef(type.getName(), getType(type.getType())); + DwarfDie typedefDieType = type.getType(); + Type typedefType = (typedefDieType != null) + ? getType(typedefDieType) + : new UnknownType(type.getName()); + returnType = new TypeDef(type.getName(), typedefType); break; case DwTag.POINTER_TYPE_: { Type ptrTarget = getType(type.getType()); diff --git a/frysk-core/frysk/pkglibdir/ChangeLog b/frysk-core/frysk/pkglibdir/ChangeLog index 74af801..be4b4c4 100644 --- a/frysk-core/frysk/pkglibdir/ChangeLog +++ b/frysk-core/frysk/pkglibdir/ChangeLog @@ -1,3 +1,7 @@ +2008-01-28 Stan Cox + + * gen-type-funit-tests.py (main): Add ptr_void_type_var. + 2008-01-23 Rick Moseley * funit-parameters.c: New for testing Start/RunCommand.java. diff --git a/frysk-core/frysk/pkglibdir/gen-type-funit-tests.py b/frysk-core/frysk/pkglibdir/gen-type-funit-tests.py index df70414..e299ca4 100644 --- a/frysk-core/frysk/pkglibdir/gen-type-funit-tests.py +++ b/frysk-core/frysk/pkglibdir/gen-type-funit-tests.py @@ -419,7 +419,7 @@ c_file.add('''struct { .int_var=1, }, }''') -# HERE HERE ------------------------------------------------------- + c_file.add('''struct { union { int int_var; @@ -780,4 +780,7 @@ c_file.add('''enum colors {\n orange = 0,\n yellow = 1,\n violet = 2,\n indi c_file.add('''enum {\n chevy = 0,\n dodge = 44,\n ford = 55\n}''', "usa_cars", "chevy") c_file.add('''enum cars {\n bmw = 0,\n mercedes = 1,\n porsche = 2\n}''', "sports_cars", "bmw") + +c_file.write("\ntypedef void void_type;\n") +c_file.add("void_type *", "ptr_void_type_var", "") c_file.epilogue() hooks/post-receive -- frysk system monitor/debugger