А если я помечу в базовом классе виртуальный метод атрибутом nodiscard, а реализации в подклассах - нет, это будет работать будто nodiscard есть или будто его нет?
при вызове компилятор должен смотреть на статический тип,
но тест на годболте вообще показал, что компилятор игнорирует nodiscard для виртуальных функций