2
的extern DECL說明符考慮下面的程序:計劃在一個類定義
extern class A;
int main() {}
是根據C++標準的這口井,形成的呢?如果它不合格需要診斷程序?我得到不同的編譯器不同的結果:
- 鏘:沒有編譯器錯誤(僅警告):http://melpon.org/wandbox/permlink/lhb8XNU01IyVhMnc
- GCC:編譯錯誤:http://melpon.org/wandbox/permlink/mIH9qmNY4noI1sEc
- VISUAL C++:沒有編譯器錯誤(只是一個警告):http://webcompiler.cloudapp.net/
供應商通常將警告定義爲診斷。就標準兼容性而言,將編譯器消息分類爲錯誤和警告(或編譯器可能發出的任何其他內容)是毫無意義的。 –
是的,你是對的,帶有pedantic錯誤,我爲Clang和GCC都收到了錯誤。 – Supremum
Clang還提供'-Weverything'而GCC則不提供。 – Chnossos