mirror of
				https://github.com/ethereum/solidity
				synced 2023-10-03 13:03:40 +00:00 
			
		
		
		
	Add comment.
This commit is contained in:
		
							parent
							
								
									fadba0e4b8
								
							
						
					
					
						commit
						5f894722df
					
				| @ -1118,7 +1118,12 @@ void TypeInference::unify(Type _a, Type _b, langutil::SourceLocation _location) | |||||||
| 
 | 
 | ||||||
| 	if (!m_activeInstantiations.empty()) | 	if (!m_activeInstantiations.empty()) | ||||||
| 	{ | 	{ | ||||||
| 		// Attempt to resolve interdependencies between type class instantiations.
 | 		// TODO: This entire logic is superfluous - I thought mutually recursive dependencies between
 | ||||||
|  | 		// class instantiations are a problem, but in fact they're not, they just resolve to mutually recursive
 | ||||||
|  | 		// functions that are fine. So instead, all instantiations can be registered with the type system directly
 | ||||||
|  | 		// when visiting the type class (assuming that they all work out) - and then all instantiations can be checked
 | ||||||
|  | 		// individually, which should still catch all actual issues (while allowing recursions).
 | ||||||
|  | 		// Original comment: Attempt to resolve interdependencies between type class instantiations.
 | ||||||
| 		std::vector<TypeClassInstantiation const*> missingInstantiations; | 		std::vector<TypeClassInstantiation const*> missingInstantiations; | ||||||
| 		bool recursion = false; | 		bool recursion = false; | ||||||
| 		bool onlyMissingInstantiations = [&]() { | 		bool onlyMissingInstantiations = [&]() { | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user