Имеется класс вида
struct A
{
void f(const String&);
String f(const int) const;
};
...
A* a = new A;
a->f(1); // clang9: error ambiguous overload
«Чинится» так
static_cast<const A*>(a)->f(1);
В отдельно взятом примере - не воспроизводится.
В чем может быть проблема, идеи? Что тут шлангу не понятно? Разве что String не определен и компилятор думает что неопределенный тип - int.