This is the mail archive of the
gdb-prs@sourceware.org
mailing list for the GDB project.
[Bug gdb/20057] Internal error on trying to set {char[]}$pc="string"
- From: "palves at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: gdb-prs at sourceware dot org
- Date: Mon, 08 Aug 2016 22:58:34 +0000
- Subject: [Bug gdb/20057] Internal error on trying to set {char[]}$pc="string"
- Auto-submitted: auto-generated
- References: <bug-20057-4717@http.sourceware.org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=20057
Pedro Alves <palves at redhat dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |sanimir.agovic at intel dot com
--- Comment #2 from Pedro Alves <palves at redhat dot com> ---
git bisect points at:
37c1ab67a35025d37d42c449deab5f254f9f59da is the first bad commit
commit 37c1ab67a35025d37d42c449deab5f254f9f59da
Author: Sanimir Agovic <sanimir.agovic@intel.com>
Date: Wed Oct 9 15:28:22 2013 +0100
type: add c99 variable length array support
The dwarf standard allow certain attributes to be expressed as dwarf
expressions rather than constants. For instance upper-/lowerbound
attributes.
In case of a c99 variable length array the upperbound is a dynamic
attribute.
With this change c99 vla behave the same as with static arrays.
1| void foo (size_t n) {
2| int ary[n];
3| memset(ary, 0, sizeof(ary));
4| }
(gdb) print ary
$1 = {0 <repeats 42 times>}
* dwarf2loc.c (dwarf2_locexpr_baton_eval): New function.
(dwarf2_evaluate_property): New function.
* dwarf2loc.h (dwarf2_evaluate_property): New function prototype.
* dwarf2read.c (attr_to_dynamic_prop): New function.
(read_subrange_type): Use attr_to_dynamic_prop to read high bound
attribute.
* gdbtypes.c: Include dwarf2loc.h.
(is_dynamic_type): New function.
(resolve_dynamic_type): New function.
(resolve_dynamic_bounds): New function.
(get_type_length): New function.
(check_typedef): Use get_type_length to compute type length.
* gdbtypes.h (TYPE_HIGH_BOUND_KIND): New macro.
(TYPE_LOW_BOUND_KIND): New macro.
(is_dynamic_type): New function prototype.
* value.c (value_from_contents_and_address): Call resolve_dynamic_type
to resolve dynamic properties of the type. Update comment.
* valops.c (get_value_at, value_at, value_at_lazy): Update comment.
:040000 040000 243e14c33458e16ed92afc34262d86bec77901d3
feee790d25fc6ece2ed184210edb33fee731f7ee M gdb
--
You are receiving this mail because:
You are on the CC list for the bug.