Тернарный условный оператор - это оператор, который объединяет несколько выражений в большее выражение. break
является оператором , а не выражением , поэтому он не может использоваться внутри тернарного условного выражения.
Вы могли бы, перепишите свой код следующим образом:
while (current->left != nullptr) current = current->left;
Надеюсь, это поможет!