
The array is too big and we don't have array fillers yet, see e.g. https://lab.llvm.org/buildbot/#/builders/154/builds/15255
18 lines
999 B
C++
18 lines
999 B
C++
// RUN: %clang_cc1 -triple i686-pc-linux-gnu -fexperimental-new-constant-interpreter -verify=expected,both %s
|
|
// RUN: %clang_cc1 -triple i686-pc-linux-gnu -verify=ref,both %s
|
|
|
|
|
|
// both-no-diagnostics
|
|
|
|
/// FIXME: Allocating the array below causes OOM failures with the bytecode interpreter.
|
|
#if 0
|
|
char melchizedek[2200000000];
|
|
typedef decltype(melchizedek[1] - melchizedek[0]) ptrdiff_t;
|
|
constexpr ptrdiff_t d1 = &melchizedek[0x7fffffff] - &melchizedek[0];
|
|
constexpr ptrdiff_t d2 = &melchizedek[0x80000000u] - &melchizedek[0]; // both-error {{constant expression}} \
|
|
// both-note {{ 2147483648 }}
|
|
constexpr ptrdiff_t d3 = &melchizedek[0] - &melchizedek[0x80000000u];
|
|
constexpr ptrdiff_t d4 = &melchizedek[0] - &melchizedek[0x80000001u]; // both-error {{constant expression}} \
|
|
// both-note {{ -2147483649 }}
|
|
#endif
|