mirror of
				https://github.com/MaskRay/ccls.git
				synced 2025-11-03 22:04:24 +00:00 
			
		
		
		
	Adapt clang rC357037: removal of setVirtualFileSystem
This commit is contained in:
		
							parent
							
								
									17eaca8a02
								
							
						
					
					
						commit
						f1cbf8d550
					
				@ -1239,12 +1239,17 @@ Index(SemaManager *manager, WorkingFiles *wfiles, VFS *vfs,
 | 
			
		||||
  DiagnosticConsumer DC;
 | 
			
		||||
  auto Clang = std::make_unique<CompilerInstance>(PCH);
 | 
			
		||||
  Clang->setInvocation(std::move(CI));
 | 
			
		||||
  Clang->setVirtualFileSystem(FS);
 | 
			
		||||
  Clang->createDiagnostics(&DC, false);
 | 
			
		||||
  Clang->setTarget(TargetInfo::CreateTargetInfo(
 | 
			
		||||
      Clang->getDiagnostics(), Clang->getInvocation().TargetOpts));
 | 
			
		||||
  if (!Clang->hasTarget())
 | 
			
		||||
    return {};
 | 
			
		||||
#if LLVM_VERSION_MAJOR >= 9 // rC357037
 | 
			
		||||
  Clang->createFileManager(FS);
 | 
			
		||||
#else
 | 
			
		||||
  Clang->setVirtualFileSystem(FS);
 | 
			
		||||
  Clang->createFileManager();
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
  IndexParam param(*vfs, no_linkage);
 | 
			
		||||
  auto DataConsumer = std::make_shared<IndexDataConsumer>(param);
 | 
			
		||||
 | 
			
		||||
@ -296,7 +296,6 @@ std::unique_ptr<CompilerInstance> BuildCompilerInstance(
 | 
			
		||||
 | 
			
		||||
  auto Clang = std::make_unique<CompilerInstance>(session.PCH);
 | 
			
		||||
  Clang->setInvocation(std::move(CI));
 | 
			
		||||
  Clang->setVirtualFileSystem(FS);
 | 
			
		||||
  Clang->createDiagnostics(&DC, false);
 | 
			
		||||
  Clang->setTarget(TargetInfo::CreateTargetInfo(
 | 
			
		||||
      Clang->getDiagnostics(), Clang->getInvocation().TargetOpts));
 | 
			
		||||
@ -305,7 +304,12 @@ std::unique_ptr<CompilerInstance> BuildCompilerInstance(
 | 
			
		||||
  // Construct SourceManager with UserFilesAreVolatile: true because otherwise
 | 
			
		||||
  // RequiresNullTerminator: true may cause out-of-bounds read when a file is
 | 
			
		||||
  // mmap'ed but is saved concurrently.
 | 
			
		||||
#if LLVM_VERSION_MAJOR >= 9 // rC357037
 | 
			
		||||
  Clang->createFileManager(FS);
 | 
			
		||||
#else
 | 
			
		||||
  Clang->setVirtualFileSystem(FS);
 | 
			
		||||
  Clang->createFileManager();
 | 
			
		||||
#endif
 | 
			
		||||
  Clang->setSourceManager(new SourceManager(Clang->getDiagnostics(),
 | 
			
		||||
                                            Clang->getFileManager(), true));
 | 
			
		||||
  auto &IS = Clang->getFrontendOpts().Inputs;
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user