mirror of
				https://github.com/MaskRay/ccls.git
				synced 2025-10-30 12:02:55 +00:00 
			
		
		
		
	This commit fixes severak compiler errors when trying to build cquery. I gave up after a bit and didn't fix them all though, there are a ton of signed to unsigned comparisons.
This commit is contained in:
		
							parent
							
								
									0376da015f
								
							
						
					
					
						commit
						3f45c05476
					
				| @ -483,7 +483,7 @@ LruSessionCache::LruSessionCache(int max_entries) : max_entries_(max_entries) {} | ||||
| 
 | ||||
| std::shared_ptr<CompletionSession> LruSessionCache::TryGetEntry( | ||||
|     const std::string& filename) { | ||||
|   for (int i = 0; i < entries_.size(); ++i) { | ||||
|   for (size_t i = 0; i < entries_.size(); ++i) { | ||||
|     if (entries_[i]->file.filename == filename) | ||||
|       return entries_[i]; | ||||
|   } | ||||
| @ -492,7 +492,7 @@ std::shared_ptr<CompletionSession> LruSessionCache::TryGetEntry( | ||||
| 
 | ||||
| std::shared_ptr<CompletionSession> LruSessionCache::TryTakeEntry( | ||||
|     const std::string& filename) { | ||||
|   for (int i = 0; i < entries_.size(); ++i) { | ||||
|   for (size_t i = 0; i < entries_.size(); ++i) { | ||||
|     if (entries_[i]->file.filename == filename) { | ||||
|       std::shared_ptr<CompletionSession> result = entries_[i]; | ||||
|       entries_.erase(entries_.begin() + i); | ||||
|  | ||||
| @ -132,7 +132,9 @@ inline void Reflect(Writer& visitor, IndexFuncRef& value) { | ||||
| 
 | ||||
|   if (value.is_implicit) | ||||
|     s += "~"; | ||||
|   if (value.id.id == -1) {  // id.id is unsigned, special case 0 value
 | ||||
| 
 | ||||
|   // id.id is unsigned, special case 0 value
 | ||||
|   if (static_cast<ssize_t>(value.id.id) == -1) { | ||||
|     s += "-1"; | ||||
|   } else { | ||||
|     s += std::to_string(value.id.id); | ||||
|  | ||||
| @ -240,12 +240,12 @@ std::string lsDocumentUri::GetPath() const { | ||||
|   result = ReplaceAll(result, "%29", ")"); | ||||
| 
 | ||||
|   size_t index = result.find("%3A"); | ||||
|   if (index != -1) { | ||||
|   if (index != std::string::npos) { | ||||
|     result.replace(result.begin() + index, result.begin() + index + 3, ":"); | ||||
|   } | ||||
| 
 | ||||
|   index = result.find("file://"); | ||||
|   if (index != -1) { | ||||
|   if (index != std::string::npos) { | ||||
| // TODO: proper fix
 | ||||
| #if defined(_WIN32) | ||||
|     result.replace(result.begin() + index, result.begin() + index + 8, ""); | ||||
|  | ||||
| @ -11,7 +11,7 @@ int GetOffsetForPosition(lsPosition position, const std::string& content) { | ||||
|   int offset = 0; | ||||
| 
 | ||||
|   int remaining_lines = position.line; | ||||
|   while (remaining_lines > 0 && offset < content.size()) { | ||||
|   while (remaining_lines > 0 && offset < static_cast<int>(content.size())) { | ||||
|     if (content[offset] == '\n') | ||||
|       --remaining_lines; | ||||
|     ++offset; | ||||
|  | ||||
| @ -28,10 +28,11 @@ std::vector<std::string> Split(const std::string& s, char delim) { | ||||
|   return elems; | ||||
| } | ||||
| 
 | ||||
| std::string Join(const std::vector<std::string>& entries, char delim, int end) { | ||||
| std::string Join(const std::vector<std::string>& entries, char delim, | ||||
|                  size_t end) { | ||||
|   std::string result; | ||||
|   bool first = true; | ||||
|   for (int i = 0; i < end; ++i) { | ||||
|   for (size_t i = 0; i < end; ++i) { | ||||
|     if (!first) | ||||
|       result += delim; | ||||
|     first = false; | ||||
| @ -62,7 +63,8 @@ void MakeDirectoryRecursive(std::string path) { | ||||
| 
 | ||||
|   // Find first parent directory which doesn't exist.
 | ||||
|   int first_success = -1; | ||||
|   for (int i = (int)components.size(); i > 0; --i) { | ||||
|   for (size_t j = 0; j < components.size(); ++j) { | ||||
|     size_t i = components.size() - j; | ||||
|     if (TryMakeDirectory(prefix + Join(components, '/', i))) { | ||||
|       first_success = i; | ||||
|       break; | ||||
| @ -76,7 +78,7 @@ void MakeDirectoryRecursive(std::string path) { | ||||
|   } | ||||
| 
 | ||||
|   // Make all child directories.
 | ||||
|   for (int i = first_success + 1; i <= components.size(); ++i) { | ||||
|   for (size_t i = first_success + 1; i <= components.size(); ++i) { | ||||
|     if (TryMakeDirectory(prefix + Join(components, '/', i)) == false) { | ||||
|       std::cerr << "Failed making directory for " << path | ||||
|                 << " even after creating parent directories" << std::endl; | ||||
|  | ||||
| @ -157,7 +157,7 @@ std::string GetWorkingDirectory() { | ||||
| std::string NormalizePath(const std::string& path) { | ||||
|   errno = 0; | ||||
|   char name[PATH_MAX + 1]; | ||||
|   realpath(path.c_str(), name); | ||||
|   (void) realpath(path.c_str(), name); | ||||
|   if (errno) | ||||
|     return path; | ||||
|   return name; | ||||
|  | ||||
| @ -110,7 +110,7 @@ struct QueryFuncRef { | ||||
|   QueryLocation loc; | ||||
|   bool is_implicit = false; | ||||
| 
 | ||||
|   bool has_id() const { return id_.id != -1; } | ||||
|   bool has_id() const { return static_cast<ssize_t>(id_.id) != -1; } | ||||
| 
 | ||||
|   QueryFuncRef() {}  // Do not use, needed for reflect.
 | ||||
|   QueryFuncRef(QueryFuncId id, QueryLocation loc, bool is_implicit) | ||||
|  | ||||
| @ -180,7 +180,7 @@ template <typename T> | ||||
| void Reflect(Reader& visitor, optional<T>& value) { | ||||
|   if (visitor.IsNull()) | ||||
|     return; | ||||
|   T real_value; | ||||
|   T real_value{}; | ||||
|   Reflect(visitor, real_value); | ||||
|   value = real_value; | ||||
| } | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user