Por que um array const não é acessível a partir de uma função constexpr?
Eu tenho uma função constexpr chamada acesso, e eu quero acessar um elemento de uma matriz:
char const*const foo="foo";
char const*const bar[10]={"bar"};
constexpr int access(char const* c) { return (foo == c); } // this is working
constexpr int access(char const* c) { return (bar[0] == c); } // this isn't
int access(char const* c) { return (bar[0] == c); } // this is also working
Eu recebo o erro:
error: the value of 'al' is not usable in a constant expression
Por que não consigo acessar um dos elementos do acesso? ou melhor, como faço isso, se é mesmo possível?