我正在寫一個輸出C++代碼的語法翻譯器,並遇到了一個有趣的問題。假設我有兩個文件:ln.x
和ln.cpp
。在ln.x
:Clang行指令
abc
在ln.cpp
:
#line 1 "ln.x"
(
當我嘗試編譯使用GCC它,它打印在ln.x
相應行:
ln.x:1:1: error: expected unqualified-id at end of input
abc
^
ln.x:1:1: error: expected ‘)’ at end of inpu
然而,鏘簡單地打印同一個文件的行:
ln.x:1:2: error: expected unqualified-id
(
^
ln.x:1:2: error: expected ')'
ln.x:1:1: note: to match this '('
(
^
2 errors generated.
有沒有辦法讓Clang打印GCC這樣的文件?
這沒有多大意義。據我所知,編譯器完全有理由抱怨,因爲只包含一個左括號的文件不是有效的C++。 – celticminstrel
你希望實現什麼?這不是C++代碼,那麼「解決這個問題」是什麼意思? –
@DrewDormann我澄清了我的問題。 – refi64