aboutsummaryrefslogtreecommitdiff
path: root/gcc/unwind-dw2-fde-glibc.c
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2005-06-14 08:25:18 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2005-06-14 08:25:18 +0000
commit950ccbc491e1061fe2162e76fbdeb2ab4b5e230f (patch)
tree5f52bb32e96bf7b8a9892d3acb3d434648793276 /gcc/unwind-dw2-fde-glibc.c
parent6f7e2c0c96d06c08555d84dadda568a01ff6a79c (diff)
downloadgcc-950ccbc491e1061fe2162e76fbdeb2ab4b5e230f.zip
gcc-950ccbc491e1061fe2162e76fbdeb2ab4b5e230f.tar.gz
gcc-950ccbc491e1061fe2162e76fbdeb2ab4b5e230f.tar.bz2
unwind-dw2-fde-darwin.c (examine_objects): Fix aliasing in read_encoded_value_with_base call.
* unwind-dw2-fde-darwin.c (examine_objects): Fix aliasing in read_encoded_value_with_base call. * unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Likewise. * unwind-dw2-fde.c (_Unwind_Find_FDE): Likewise. * unwind-dw2.c (extract_cie_info): Fix aliasing in read_encoded_value call. (execute_cfa_program, uw_frame_state_for): Likewise. From-SVN: r100927
Diffstat (limited to 'gcc/unwind-dw2-fde-glibc.c')
-rw-r--r--gcc/unwind-dw2-fde-glibc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/unwind-dw2-fde-glibc.c b/gcc/unwind-dw2-fde-glibc.c
index 306afdd..ebc2d9c 100644
--- a/gcc/unwind-dw2-fde-glibc.c
+++ b/gcc/unwind-dw2-fde-glibc.c
@@ -386,11 +386,13 @@ _Unwind_IteratePhdrCallback (struct dl_phdr_info *info, size_t size, void *ptr)
data->ret = linear_search_fdes (&ob, (fde *) eh_frame, (void *) data->pc);
if (data->ret != NULL)
{
+ _Unwind_Ptr func;
unsigned int encoding = get_fde_encoding (data->ret);
+
read_encoded_value_with_base (encoding,
base_from_cb_data (encoding, data),
- data->ret->pc_begin,
- (_Unwind_Ptr *)&data->func);
+ data->ret->pc_begin, &func);
+ data->func = (void *) func;
}
return 1;
}