Да, в си функция может вернуть код ошибки. Но возвращаемое значение не предназначается исключительно для этого. Чаще функция там может вернуть именно результат. Например функция синуса вернет значение синуса.
Если я верно делаю выводы, то, в том же си, нет средства для работы с ошибками встроенного в язык, а в го он есть. И механизм исключений в плюсах\джаве - это именно аналог панике.