You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have recently tried to use the pretty printer functions for gdb supplied in contrib/utilities/dotgdbinit.py to print the values
of a Vector object. This fails with the error message:
Python Exception <class 'gdb.error'> There is no member or method name data_end.:
This problem first ocured after upgrading from version 9.2 to #9.3.
Other pretty printer functions (for example for tensors and points) function as expected.
After some digging I've found that gdb tries to use the members data_end and data_begin of the AlignedVector class
to calculate the length of the vector and to iterate over the container.
Both members where present in deal 9.2 but seem to have been deprecated in version 9.3.
As such the pretty printer function no longer works.
In order to reproduce the problem install the pretty printer functions as described here.
Then debug the step-3 tutorial using gdb and try to print the system_rhs vector.
The text was updated successfully, but these errors were encountered:
I fixed the issue and made a pull request ( #12546 ).
This is my first time contributing so if anything is not up to code please let me know and I'll try to fix it.
bangerth
changed the title
GDB Pretty Printing of Vector depents on deprecated member
GDB Pretty Printing of Vector depends on deprecated member
Jan 7, 2022
I have recently tried to use the pretty printer functions for gdb supplied in contrib/utilities/dotgdbinit.py to print the values
of a Vector object. This fails with the error message:
This problem first ocured after upgrading from version 9.2 to #9.3.
Other pretty printer functions (for example for tensors and points) function as expected.
After some digging I've found that gdb tries to use the members data_end and data_begin of the AlignedVector class
to calculate the length of the vector and to iterate over the container.
Both members where present in deal 9.2 but seem to have been deprecated in version 9.3.
As such the pretty printer function no longer works.
In order to reproduce the problem install the pretty printer functions as described here.
Then debug the step-3 tutorial using gdb and try to print the system_rhs vector.
The text was updated successfully, but these errors were encountered: