mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2025-02-14 14:56:47 +00:00
[Sema] PR26444 fix crash when alignment value is >= 2**16
Sema allows max values up to 2**28, use unsigned instead of unsiged short to hold values that large. Differential Revision: http://reviews.llvm.org/D17248 Patch by Don Hinton! llvm-svn: 262466
This commit is contained in:
parent
5aadde1ecc
commit
ec4b7341cc
@ -445,7 +445,7 @@ class AggValueSlot {
|
||||
// Qualifiers
|
||||
Qualifiers Quals;
|
||||
|
||||
unsigned short Alignment;
|
||||
unsigned Alignment;
|
||||
|
||||
/// DestructedFlag - This is set to true if some external code is
|
||||
/// responsible for setting up a destructor for the slot. Otherwise
|
||||
|
@ -3,6 +3,9 @@
|
||||
int x __attribute__((aligned(3))); // expected-error {{requested alignment is not a power of 2}}
|
||||
int y __attribute__((aligned(1 << 29))); // expected-error {{requested alignment must be 268435456 bytes or smaller}}
|
||||
|
||||
// PR26444
|
||||
int y __attribute__((aligned(1 << 28)));
|
||||
|
||||
// PR3254
|
||||
short g0[3] __attribute__((aligned));
|
||||
short g0_chk[__alignof__(g0) == 16 ? 1 : -1];
|
||||
|
Loading…
x
Reference in New Issue
Block a user