This is the mail archive of the gdb@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]

Problem Assining Values to Arrays in GDB 4.17


  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


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