aboutsummaryrefslogtreecommitdiff
path: root/clang/test/SemaCXX/constexpr-ackermann.cpp
blob: 9d368adc8f7a2e6c8304696b6ea41abca840ad7b (plain)
1
2
3
4
5
6
7
8
9
// RUN: %clang_cc1 -std=c++11 -fsyntax-only %s
// RUN: %clang_cc1 -std=c++11 -fsyntax-only -fexperimental-new-constant-interpreter %s

constexpr unsigned long long A(unsigned long long m, unsigned long long n) {
  return m == 0 ? n + 1 : n == 0 ? A(m-1, 1) : A(m - 1, A(m, n - 1));
}

using X = int[A(3,4)];
using X = int[125];