From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2564 invoked by alias); 3 Apr 2008 05:33:19 -0000 Received: (qmail 2550 invoked by uid 22791); 3 Apr 2008 05:33:14 -0000 X-Spam-Check-By: sourceware.org Received: from ug-out-1314.google.com (HELO ug-out-1314.google.com) (66.249.92.173) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 03 Apr 2008 05:32:57 +0000 Received: by ug-out-1314.google.com with SMTP id h2so1007266ugf.12 for ; Wed, 02 Apr 2008 22:32:53 -0700 (PDT) Received: by 10.67.29.20 with SMTP id g20mr1141579ugj.54.1207200773882; Wed, 02 Apr 2008 22:32:53 -0700 (PDT) Received: by 10.67.122.5 with HTTP; Wed, 2 Apr 2008 22:32:53 -0700 (PDT) Message-ID: Date: Thu, 03 Apr 2008 05:33:00 -0000 From: JBWeeN To: "Michael Snyder" Subject: Re: Problem Assining Values to Arrays in GDB 4.17 Cc: gdb@sourceware.org In-Reply-To: <1207159771.31772.124.camel@localhost.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <1207159771.31772.124.camel@localhost.localdomain> X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2008-04/txt/msg00015.txt.bz2 It does not work, If a use a system call gdb says that command is undefined. I get the following error: (gdb) memcpy(myArray, {1.2, 2.0, 5.7}, 3*sizeof(double)) Undefined command: "memcpy". Try "help". On Wed, Apr 2, 2008 at 8:09 PM, Michael Snyder wrote: > Perhaps you could use memcpy? > > > On Wed, 2008-04-02 at 18:31 +0200, JBWeeN wrote: > > First of all, thanks for read my message. > > I am having the following problem: > > > > I am using GDB 4.17, I would like to upgrade it to a modern > > version, but I am obliged. > > > > In modern GDB releases I can assign directly values to an array > > using the following sintax: > > (gdb) set var myArray = {1.0, 2.0, 3.0, 4.0, 5.0,6.0} > > > > But in this release (GDB 4.17) If I use the same command, I get the > > following error: > > (gdb) set var myArray = {1.0, 2.0, 3.0, 4.0, 5.0, 6.0} > > Invalid Cast > > > > Looking for information about the problem I found that I could > > solve the problem doing a direct cast: > > (gdb) set var myArray = {double *} {1.0, 2.0, 3.0, 4.0, 5.0, 6.0} > > > > I do not why, but this solution only works sometimes. Other times, > > it appears the following error: > > Cannot access memory at address 0x545f98. > > > > It seems that GDB tries to modify myArray pointing to a new memory > > address, but it is very strange that this new address not exists. > > > > I know that I have another solution > > (gdb) set myArray[0] = ... > > (gdb) set myArray[1] = ... > > (gdb) set myArray[2] = ... > > (gdb) set myArray[3] = ... > > > > But I have a lot of GDB scripts with a lot of arrays assignments > > that use this syntax and I have to migrate them to GDB 4.17. > > > > Is there any other way to assign array values directly? > > > > Is there my only option to assing one by one? (I hope it is not) > > > > Thanks for all, > > > > Best Regards > >