This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: patch in ada-tasks needs small fix (was: "New ARI warning Fri Feb 24 01:54:10 UTC 2012")
> > Would you take a look at that? If you don't get to it today, then
> > I will try to have a look at it.
>
> I can propose this patch, but I haven't yet tested it beyond compiling gdb:
This looks good to me. I think that native testing is going to be
sufficient. If you are running out of time, no worries, I can test
and commit for you.
> diff --git a/gdb/ada-tasks.c b/gdb/ada-tasks.c
> index 4c0b667..11ad262 100644
> --- a/gdb/ada-tasks.c
> +++ b/gdb/ada-tasks.c
> @@ -870,13 +870,15 @@ ada_tasks_inferior_data_sniffer (struct ada_tasks_inferior_data *data)
> {
> /* Validate. */
> struct type *type = check_typedef (SYMBOL_TYPE (sym));
> - struct type *eltype;
> - struct type *idxtype;
> -
> - if (TYPE_CODE (type) == TYPE_CODE_ARRAY
> - && (eltype = check_typedef (TYPE_TARGET_TYPE (type)))
> - && TYPE_CODE (eltype) == TYPE_CODE_PTR
> - && (idxtype = check_typedef (TYPE_INDEX_TYPE (type)))
> + struct type *eltype = NULL;
> + struct type *idxtype = NULL;
> +
> + if (TYPE_CODE (type) == TYPE_CODE_ARRAY)
> + eltype = check_typedef (TYPE_TARGET_TYPE (type));
> + if (eltype != NULL
> + && TYPE_CODE (eltype) == TYPE_CODE_PTR)
> + idxtype = check_typedef (TYPE_INDEX_TYPE (type));
> + if (idxtype != NULL
> && !TYPE_LOW_BOUND_UNDEFINED (idxtype)
> && !TYPE_HIGH_BOUND_UNDEFINED (idxtype))
Thanks!
--
Joel