brintos

brintos / llvm-project-archived public Read only

0
0
Text · 999 B · dafa3ea Raw
18 lines · cpp
1// RUN: %clang_cc1 -triple i686-pc-linux-gnu -fexperimental-new-constant-interpreter -verify=expected,both %s2// RUN: %clang_cc1 -triple i686-pc-linux-gnu                                         -verify=ref,both      %s3 4 5// both-no-diagnostics6 7/// FIXME: Allocating the array below causes OOM failures with the bytecode interpreter.8#if 09char melchizedek[2200000000];10typedef decltype(melchizedek[1] - melchizedek[0]) ptrdiff_t;11constexpr ptrdiff_t d1 = &melchizedek[0x7fffffff] - &melchizedek[0];12constexpr ptrdiff_t d2 = &melchizedek[0x80000000u] - &melchizedek[0]; // both-error {{constant expression}} \13                                                                      // both-note {{ 2147483648 }}14constexpr ptrdiff_t d3 = &melchizedek[0] - &melchizedek[0x80000000u];15constexpr ptrdiff_t d4 = &melchizedek[0] - &melchizedek[0x80000001u]; // both-error {{constant expression}} \16                                                                      // both-note {{ -2147483649 }}17#endif18