Эмулирует ли G CC __builtin_unreachable в Visual Studio? - PullRequest
2 голосов
/ 22 марта 2020

Я видел этот вопрос, который касается эмуляции __builtin_unreachable в более старой версии G CC. Мой вопрос именно так, но для Visual Studio (2019). Есть ли в Visual Studio какой-то эквивалент __builtin_unreachable? Можно ли его подражать?

Ответы [ 2 ]

3 голосов
/ 22 марта 2020

MSV C имеет встроенную функцию __assume, которую можно использовать для реализации __builtin_unreachable. Как сказано в документации, __assume(0) не должно быть в доступной ветви кода, что означает, что эта ветвь должна быть недоступна.

2 голосов
/ 22 марта 2020

Visual Studio имеет __assume(0) для этого варианта использования.

...