読者です 読者をやめる 読者になる 読者になる

<system_error>のinvalid_argumentが名前衝突すると思ったらしなかった

C++

昨日↓のエントリを見つけて「これはまずい!」と思ったのですが


じょ〜だんの日記 - C++0x ヘッダ<system_error>


N2800見たらのinvalid_argumentは
enumじゃなくてenum classになってるので名前衝突しませんね。
(enum classはスコープあるので)

#include <system_error>
#include <stdexcept>

void foo()
{
    std::error_code err = std::make_error_code(std::errc::invalid_argument);

    throw std::invalid_argument("error!");
}

慌てて委員会のMLにも「これ直さないとまずいですよ」ってメール投げちゃった (´・ω・`)