Если я всё правильно понял, то:
- вызвать panic с аргументом nil вполне возможно.
- при этом recover вернёт nil. Также recover возвращает nil при отсутствии паники. То есть, если есть recover, то невозможно определить, была ли вызвана паника с nil внутри данного куска кода или же код исполнился нормально.
Я всё правильно понял?