あ、全く一緒ではなかった
throw()は違反するとstd::unexpected()を呼ぶ
noexceptはstd::terminate()を呼ぶ

多分違いはそれだけ