Fix a fixme, by only parsing extern "C" in C++ mode.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45905 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2008-01-12 07:08:43 +00:00
Родитель c6fdc34ac0
Коммит 3c6f6a7a1b
1 изменённых файлов: 1 добавлений и 2 удалений

Просмотреть файл

@ -389,8 +389,7 @@ Parser::DeclTy *Parser::ParseDeclarationOrFunctionDefinition() {
// If the declspec consisted only of 'extern' and we have a string
// literal following it, this must be a C++ linkage specifier like
// 'extern "C"'.
// FIXME: This should be limited to just C++/ObjectiveC++
if (Tok.is(tok::string_literal) &&
if (Tok.is(tok::string_literal) && getLang().CPlusPlus &&
DS.getStorageClassSpec() == DeclSpec::SCS_extern &&
DS.getParsedSpecifiers() == DeclSpec::PQ_StorageClassSpecifier)
return ParseLinkage(Declarator::FileContext);