ну так и надо, вопрос в том что ты не знаешь ЧТО доставать
это не очень комильфо, но есть достаточно известный плюсовый костыль на этот случай
тебе же по сути нужно вызвать конструктор некоторой сущности с хер пойми какими аргументами, правильно?
если он условно не перегружен по определению, ты пихаешь в него аргументами промежуточный класс, для которого определен implicit cast во что угодно, и теперь ты знаешь, что доставать