Как стать автором
Обновить

Комментарии 3

Немного забавно читать данный отчёт, который содержит весьма небольшое количество не самых серъёзных ошибок для такого уровня проекта. Это говорит о высоком уровне разработчиков RPCS3. В данном проекте тонны сложнейшего низкоуровнего кода на векторных интринсиках, lock-free код, vulkan, сложная синхронизация структурно различных модулей. Достаточно вспомнить, что архитектура Cell процессора от IBM кардинально отличается от x86. Да, это ошибки конечно стоит найти и исправить. И это не значит, что надо отказываться от статических анализаторов. Но на общем фоне сложности проекта, описанные ошибки анализаторв выглядят предлождением протереть лобовое и прочие стёкла автомобиля от пыли. Но в проекте наверняка есть реально сложные ошибки, которые никаким самым современным статическим анализатором не найти.

Определение пользовательской функции swap – частый случай такой ошибки.

Интересно, а что делать в случае std::hash? Ведь для этого нельзя написать using, когда используешь std::unordered_map, ведь это определение находится в типах, а не реализации. При этом хочется иметь именно обобщенное написание кода.

Не самое красивое решение, но единственный официальный способ - реализовывать класс hash в своем неймспейсе и передавать его как шаблонный параметр.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий