This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]