Handle input predicates correctly
This commit is contained in:
		@@ -117,7 +117,8 @@ impl PredicateDeclaration
 | 
				
			|||||||
		let dependencies = match *dependencies
 | 
							let dependencies = match *dependencies
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			Some(ref dependencies) => dependencies,
 | 
								Some(ref dependencies) => dependencies,
 | 
				
			||||||
			None => unreachable!("all dependencies should have been collected at this point"),
 | 
								// Input predicates don’t have completed definitions and no dependencies, so ignore them
 | 
				
			||||||
 | 
								None => return,
 | 
				
			||||||
		};
 | 
							};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		for dependency in dependencies.iter()
 | 
							for dependency in dependencies.iter()
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -69,6 +69,11 @@ impl Problem
 | 
				
			|||||||
				continue;
 | 
									continue;
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								if *predicate_declaration.is_input.borrow()
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									continue;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			let matching_statement = |statement: &&Statement|
 | 
								let matching_statement = |statement: &&Statement|
 | 
				
			||||||
				match statement.kind
 | 
									match statement.kind
 | 
				
			||||||
				{
 | 
									{
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user