diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2009-03-27 22:33:16 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2009-03-27 15:33:16 -0700 |
commit | d9223014f991d207719b03fca8d8433edc58f27a (patch) | |
tree | 730765d79cb3b96fe1aa99617f3d96390ff336d7 /gcc/ada/gcc-interface/utils.c | |
parent | 689b689c17aa25f3ba3e1390a5bf513bd586c46a (diff) | |
download | gcc-d9223014f991d207719b03fca8d8433edc58f27a.zip gcc-d9223014f991d207719b03fca8d8433edc58f27a.tar.gz gcc-d9223014f991d207719b03fca8d8433edc58f27a.tar.bz2 |
re PR target/39323 (MAX_OFILE_ALIGNMENT in elfos.h is too big)
gcc/
2009-03-27 H.J. Lu <hongjiu.lu@intel.com>
PR c/39323
* c-common.c (handle_aligned_attribute): Properly check alignment
overflow. Use (1U << i) instead of (1 << i).
* emit-rtl.c (get_mem_align_offset): Use "unsigned int" for
align.
* expr.h (get_mem_align_offset): Updated.
* tree.h (tree_decl_common): Change align to "unsigned int" and
move it before pointer_alias_set.
gcc/ada/
2009-03-27 H.J. Lu <hongjiu.lu@intel.com>
PR c/39323
* gcc-interface/utils.c (create_field_decl): Use "unsigned int"
on bit_align.
gcc/testsuite/
2009-03-27 H.J. Lu <hongjiu.lu@intel.com>
PR c/39323
* gcc.dg/pr39323-1.c: New.
* gcc.dg/pr39323-2.c: Likewise.
* gcc.dg/pr39323-3.c: Likewise.
From-SVN: r145136
Diffstat (limited to 'gcc/ada/gcc-interface/utils.c')
-rw-r--r-- | gcc/ada/gcc-interface/utils.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/ada/gcc-interface/utils.c b/gcc/ada/gcc-interface/utils.c index 7b52d90..8c5dc58 100644 --- a/gcc/ada/gcc-interface/utils.c +++ b/gcc/ada/gcc-interface/utils.c @@ -1707,7 +1707,7 @@ create_field_decl (tree field_name, tree field_type, tree record_type, we get the alignment from the type, indicate if this is from an explicit user request, which prevents stor-layout from lowering it later on. */ { - int bit_align + unsigned int bit_align = (DECL_BIT_FIELD (field_decl) ? 1 : packed && TYPE_MODE (field_type) != BLKmode ? BITS_PER_UNIT : 0); |