mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-04 13:29:12 +00:00 
			
		
		
		
	Fixed handling of "input foo; reg [0:0] foo;"
This commit is contained in:
		
							parent
							
								
									8e8e791fb5
								
							
						
					
					
						commit
						a588a4a5c9
					
				
					 1 changed files with 7 additions and 0 deletions
				
			
		| 
						 | 
					@ -186,6 +186,13 @@ bool AstNode::simplify(bool const_fold, bool at_zero, bool in_lvalue, int stage,
 | 
				
			||||||
					AstNode *first_node = this_wire_scope[node->str];
 | 
										AstNode *first_node = this_wire_scope[node->str];
 | 
				
			||||||
					if (!node->is_input && !node->is_output && node->is_reg && node->children.size() == 0)
 | 
										if (!node->is_input && !node->is_output && node->is_reg && node->children.size() == 0)
 | 
				
			||||||
						goto wires_are_compatible;
 | 
											goto wires_are_compatible;
 | 
				
			||||||
 | 
										if (first_node->children.size() == 0 && node->children.size() == 1 && node->children[0]->type == AST_RANGE) {
 | 
				
			||||||
 | 
											AstNode *r = node->children[0];
 | 
				
			||||||
 | 
											if (r->range_valid && r->range_left == 0 && r->range_right == 0) {
 | 
				
			||||||
 | 
												delete r;
 | 
				
			||||||
 | 
												node->children.pop_back();
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
					if (first_node->children.size() != node->children.size())
 | 
										if (first_node->children.size() != node->children.size())
 | 
				
			||||||
						goto wires_are_incompatible;
 | 
											goto wires_are_incompatible;
 | 
				
			||||||
					for (size_t j = 0; j < node->children.size(); j++) {
 | 
										for (size_t j = 0; j < node->children.size(); j++) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue