From: David Greene Date: Tue, 15 Jan 2013 22:09:51 +0000 (+0000) Subject: Fix Casting X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=041e6aab2f48574009aebfb41ffcb74d00758a1f;p=clang Fix Casting Use const_cast<> to avoid a cast-away-const error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172565 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/libclang/IndexingContext.cpp b/tools/libclang/IndexingContext.cpp index 43eeb44ef0..2dea75714b 100644 --- a/tools/libclang/IndexingContext.cpp +++ b/tools/libclang/IndexingContext.cpp @@ -231,7 +231,9 @@ bool IndexingContext::shouldAbort() { void IndexingContext::enteredMainFile(const FileEntry *File) { if (File && CB.enteredMainFile) { - CXIdxClientFile idxFile = CB.enteredMainFile(ClientData, (CXFile)File, 0); + CXIdxClientFile idxFile = + CB.enteredMainFile(ClientData, + static_cast(const_cast(File)), 0); FileMap[File] = idxFile; } } @@ -247,7 +249,8 @@ void IndexingContext::ppIncludedFile(SourceLocation hashLoc, ScratchAlloc SA(*this); CXIdxIncludedFileInfo Info = { getIndexLoc(hashLoc), SA.toCStr(filename), - (CXFile)File, + static_cast( + const_cast(File)), isImport, isAngled, isModuleImport }; CXIdxClientFile idxFile = CB.ppIncludedFile(ClientData, &Info); FileMap[File] = idxFile; @@ -263,7 +266,8 @@ void IndexingContext::importedModule(const ImportDecl *ImportD) { std::string ModuleName = Mod->getFullModuleName(); CXIdxImportedASTFileInfo Info = { - (CXFile)Mod->getASTFile(), + static_cast( + const_cast(Mod->getASTFile())), Mod, getIndexLoc(ImportD->getLocation()), ImportD->isImplicit() @@ -277,7 +281,8 @@ void IndexingContext::importedPCH(const FileEntry *File) { return; CXIdxImportedASTFileInfo Info = { - (CXFile)File, + static_cast( + const_cast(File)), /*module=*/NULL, getIndexLoc(SourceLocation()), /*isImplicit=*/false @@ -862,7 +867,7 @@ CXIdxLoc IndexingContext::getIndexLoc(SourceLocation Loc) const { if (Loc.isInvalid()) return idxLoc; - idxLoc.ptr_data[0] = (void*)this; + idxLoc.ptr_data[0] = const_cast(this); idxLoc.int_data = Loc.getRawEncoding(); return idxLoc; } @@ -888,7 +893,7 @@ void IndexingContext::translateLoc(SourceLocation Loc, if (indexFile) *indexFile = getIndexFile(FE); if (file) - *file = (void *)FE; + *file = const_cast(FE); if (line) *line = SM.getLineNumber(FID, FileOffset); if (column)