mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 19:52:31 +00:00 
			
		
		
		
	- Add support for assignments within expressions, e.g., `x[y++] = z;` or `x = (y *= 2) - 1;`. The logic is handled entirely within the parser by injecting statements into the current procedural block. - Add support for pre-increment/decrement statements, which are behaviorally equivalent to post-increment/decrement statements. - Fix non-standard attribute position used for post-increment/decrement statements.
		
			
				
	
	
		
			28 lines
		
	
	
	
		
			509 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
	
		
			509 B
		
	
	
	
		
			Text
		
	
	
	
	
	
| read_verilog <<EOT
 | |
| module top;
 | |
|     task foo;
 | |
|     endtask
 | |
| 
 | |
|     always @*
 | |
|         (* foo *) foo;
 | |
| 
 | |
|     initial
 | |
|         if (0) $info("bar");
 | |
| endmodule
 | |
| EOT
 | |
| # Since task enables are not an RTLIL object,
 | |
| #   any attributes on their AST get dropped
 | |
| select -assert-none a:* a:src %d
 | |
| 
 | |
| 
 | |
| logger -expect error "syntax error, unexpected ';', expecting ATTR_BEGIN or TOK_INCREMENT or TOK_DECREMENT" 1
 | |
| design -reset
 | |
| read_verilog <<EOT
 | |
| module top;
 | |
|     task foo;
 | |
|     endtask
 | |
| 
 | |
|     always @*
 | |
|         foo (* foo *);
 | |
| endmodule
 | |
| EOT
 |