>>363
↓MEMBERの定義を変えてコンパイルして見れ。

#define MEMBER 1
struct S;
struct T
{
    T();
    T(const S&);// S to T
#if MEMBER
    bool operator==(int) const;
#endif
};
#if !MEMBER
bool operator==(const T&,int);
#endif

bool f(const S& s,int i)
{
    return s == i;
}