#include <iostream>
#include <string>
#include <vector>
#include <cctype>
#include <cstdlib>
#include <stdexcept>
#include <initializer_list>

using namespace std;

constexpr size_t sz() { return 42; }
constexpr size_t scale (size_t i) { return i * sz(); }

bool f (const string &s1, const string &s2) { cout << "function called" << endl; return 0; }
bool g (const string &s1, const string &s2);

int main()
{
        int i = 2;
        int a[scale(i)];

        string x = "xxx", y = "yyy";
        decltype(g) *pf = f;
        (*pf)(x, y);
}
