llvm/clang/test/CodeGenCXX/typeinfo

namespace std {
  class type_info {
  public:
    virtual ~type_info();
    const char* name() const { return __name; }
    bool operator==(const type_info& __arg) const {
     return __name == __arg.__name;
    }

    bool operator!=(const type_info& __arg) const {
      return !operator==(__arg);
    }

    bool before(const type_info& __arg) const {
      return __name < __arg.__name;
    }

    unsigned long hash_code() const {
      return reinterpret_cast<unsigned long long>(__name);
    }
  protected:
    const char *__name;
  };
}