này biên dịch khi sử dụng clang -std=gnu++11 -c test.cpp
:Tại sao mã C++ này biên dịch khi sử dụng clang -std = gnu ++ 11?
void test() {
[[random text here]]
if (0) {
}
}
Nhưng điều này mang lại cho lỗi main.cpp:3:1: error: expected statement
:
void test() {
[[random text here]]
}
Nếu tôi biên dịch với clang -std=gnu++11 -S -emit-llvm main.cpp
và nhìn vào mã LLVM nó trông giống như dòng [[...]]
không có tác dụng:
define void @_Z5testv() nounwind uwtable ssp {
ret void
}
Mọi ý tưởng tại sao? lỗi hoặc một số cú pháp C++ 11 hoặc cú pháp mở rộng GNU?
Im sử dụng kêu vang từ Xcode 4.4.1 (Apple kêu vang phiên bản 4.0 (tags/Apple/kêu vang-421.0.60) (dựa trên LLVM 3.1svn).
'[[văn bản ngẫu nhiên ở đây]]' Đó có phải là mô tả bằng chữ chính xác những gì bạn đặt trong mã hay là trình giữ chỗ cho nội dung nào đó không? Tôi chỉ muốn làm rõ điều đó. –
không có trình giữ chỗ chính xác là mã nguồn –