namespaceを使わなかった男の末路
ええ、そうですよ。どうせ適当にC++でプログラミングをしていた私が悪いんですよ。
以下GLEE移行で発生した問題。しかもWindowsでは問題なし。
./Window.h:13: error: using typedef-name 'Window' after 'class' /usr/include/X11/X.h:101: error: 'Window' has a previous declaration here
で/usr/include/X11/X.hの該当部分。
typedef XID Window;
・・・何にせよ、namespaceで独自の名前空間を作っていれば回避できたこと。
ライブラリだろうが、アプリケーションだろうが名前空間を使わんのは、後で何が起こっても知らんぞ、という教訓でした。