mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-04 05:19:11 +00:00 
			
		
		
		
	be more verbose for select -assert-any and -assert-none
This commit is contained in:
		
							parent
							
								
									667543de0b
								
							
						
					
					
						commit
						3c0b5139a1
					
				
					 1 changed files with 16 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -664,6 +664,20 @@ void handle_extra_select_args(Pass *pass, std::vector<std::string> args, size_t
 | 
			
		|||
		design->selection_stack.push_back(RTLIL::Selection(false));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
std::string list_nonopt_args(std::vector<std::string> args)
 | 
			
		||||
{
 | 
			
		||||
	size_t argidx;
 | 
			
		||||
	std::string result = "";
 | 
			
		||||
	for (argidx = 1; argidx < args.size(); argidx++)
 | 
			
		||||
	{
 | 
			
		||||
		std::string arg = args[argidx];
 | 
			
		||||
		if (arg.size() > 0 && arg[0] == '-')
 | 
			
		||||
			continue;
 | 
			
		||||
		result += arg + " ";
 | 
			
		||||
	}
 | 
			
		||||
	return result;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
struct SelectPass : public Pass {
 | 
			
		||||
	SelectPass() : Pass("select", "modify and view the list of selected objects") { }
 | 
			
		||||
	virtual void help()
 | 
			
		||||
| 
						 | 
				
			
			@ -1004,7 +1018,7 @@ struct SelectPass : public Pass {
 | 
			
		|||
			if (work_stack.size() == 0)
 | 
			
		||||
				log_cmd_error("No selection to check.\n");
 | 
			
		||||
			if (!work_stack.back().empty())
 | 
			
		||||
				log_error("Assertation failed: selection is not empty.\n");
 | 
			
		||||
				log_error("Assertation failed: selection is not empty: %s\n",list_nonopt_args(args).c_str());
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -1013,7 +1027,7 @@ struct SelectPass : public Pass {
 | 
			
		|||
			if (work_stack.size() == 0)
 | 
			
		||||
				log_cmd_error("No selection to check.\n");
 | 
			
		||||
			if (work_stack.back().empty())
 | 
			
		||||
				log_error("Assertation failed: selection is empty.\n");
 | 
			
		||||
				log_error("Assertation failed: selection is empty: %s\n",list_nonopt_args(args).c_str());
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue