aboutsummaryrefslogtreecommitdiff
path: root/gcc/dwarf2out.c
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2001-01-01 00:27:11 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2000-12-31 19:27:11 -0500
commitb4ae520152976c22948e7c90360dcd93aacf2f88 (patch)
tree13b6b4460c328d18d295a24b21c835836adcbb42 /gcc/dwarf2out.c
parente304a8e61a5970791a71e4a4f35509e9574202b7 (diff)
downloadgcc-b4ae520152976c22948e7c90360dcd93aacf2f88.zip
gcc-b4ae520152976c22948e7c90360dcd93aacf2f88.tar.gz
gcc-b4ae520152976c22948e7c90360dcd93aacf2f88.tar.bz2
dwarf2out.c (loc_descriptor_from_tree, [...]): New.
* dwarf2out.c (loc_descriptor_from_tree, case WITH_RECORD_EXPR): New. (loc_descriptor_from_tree, case SAVE_EXPR): New. From-SVN: r38579
Diffstat (limited to 'gcc/dwarf2out.c')
-rw-r--r--gcc/dwarf2out.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 344fe4d..ec47c36 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -7793,6 +7793,13 @@ loc_descriptor_from_tree (loc, addressp)
case ERROR_MARK:
break;
+ case WITH_RECORD_EXPR:
+ /* This case involves extracting fields from an object to determine the
+ position of other fields. We don't try to encode this here. The
+ only user of this is Ada, which encodes the needed information using
+ the names of types. */
+ return ret;
+
case VAR_DECL:
case PARM_DECL:
{
@@ -7828,6 +7835,7 @@ loc_descriptor_from_tree (loc, addressp)
case NOP_EXPR:
case CONVERT_EXPR:
case NON_LVALUE_EXPR:
+ case SAVE_EXPR:
return loc_descriptor_from_tree (TREE_OPERAND (loc, 0), addressp);
case COMPONENT_REF: