Mencetak array yang dapat dialokasikan di Fortran dengan gdb: Opcode ekspresi katai yang tidak tertangani 0x97 [duplikat]

Saya telah men-debug potongan kode berikut di Cygwin dan Eclipse menggunakan gdb sebagai debugger:

program codetest
    implicit none

    integer, parameter :: dp = kind(1.0d0)
    integer, parameter :: N = 10
    real(dp), dimension(:), allocatable :: vector
    integer :: i

    allocate(vector(1:N))

    forall(i = 1:10)
        vector(i) = sqrt(real(i, dp))
    end forall

    write(*, '(F7.3, 1X)', advance = 'no') (vector(i), i = 1, N)

    deallocate(vector)
end program codetest

Saat menjalankan gdb, saya mencoba mencetak array "vektor" yang dapat dialokasikan mengikuti alokasinya, tetapi saya berakhir dengan yang berikut:

(gdb) p vector
Unhandled dwarf expression opcode 0x97

Saya telah menjelajahi Stack Overflow dan Google, tetapi saya belum menemukan apa pun yang menyentuh inti permasalahan. Saya telah memeriksa yang berikut ini,

tapi saya masih belum mengerti apa masalahnya atau bagaimana cara memperbaikinya. Saya mendapat keluhan yang sama dari gdb di Eclipse (Rilis Mars.1, 4.5.1) ketika mencoba mencetak/menampilkan konten tipe turunan. Spesifikasi terkini tentang mesin/kompiler/debugger saya meliputi yang berikut:

  • Windows 8.1
  • versi gfortran: GNU Fortran (GCC) 4.9.3
  • versi gdb: GNU gdb (GDB) 7.8

Bantuan apa pun dihargai.


person B. Quanah Parker    schedule 18.11.2015    source sumber
comment
Ini hanyalah duplikat! Jawaban yang Anda tautkan dengan jelas menyatakan Anda membutuhkan cabang gdb lain yang menggabungkan pach dari cabang Archer. Versi gdb Anda tidak memiliki kemampuan. Apa yang ingin Anda ketahui lebih lanjut?   -  person Vladimir F    schedule 18.11.2015
comment
stackoverflow.com/questions/16447741/ stackoverflow.com/questions/11656030/   -  person Vladimir F    schedule 18.11.2015
comment
Terima kasih Vladimir. Saya memperbarui versi gdb saya, semuanya sudah kuah sekarang.   -  person B. Quanah Parker    schedule 18.11.2015


Jawaban (1)


Seperti yang ditunjukkan di komentar, saya hanya perlu memperbarui versi gdb saya, yang saya lakukan melalui Cygwin. Saya sekarang menjalankan gdb versi 7.9.1-1 dengan versi gfortran yang sama seperti sebelumnya.

person B. Quanah Parker    schedule 18.11.2015