mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-11-03 22:49:17 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			25 lines
		
	
	
		
			825 B
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			825 B
		
	
	
	
		
			Markdown
		
	
	
	
	
	
The files here use the LLVM FileCheck framework, documented at
 | 
						|
<https://llvm.org/docs/CommandGuide/FileCheck.html>.
 | 
						|
 | 
						|
One extension worth noting is the use of revisions as custom prefixes for
 | 
						|
FileCheck. If your codegen test has different behavior based on the chosen
 | 
						|
target or different compiler flags that you want to exercise, you can use a
 | 
						|
revisions annotation, like so:
 | 
						|
 | 
						|
```rust
 | 
						|
// revisions: aaa bbb
 | 
						|
// [bbb] compile-flags: --flags-for-bbb
 | 
						|
```
 | 
						|
 | 
						|
After specifying those variations, you can write different expected, or
 | 
						|
explicitly *unexpected* output by using `<prefix>-SAME:` and `<prefix>-NOT:`,
 | 
						|
like so:
 | 
						|
 | 
						|
```rust
 | 
						|
// CHECK: expected code
 | 
						|
// aaa-SAME: emitted-only-for-aaa
 | 
						|
// aaa-NOT:                        emitted-only-for-bbb
 | 
						|
// bbb-NOT:  emitted-only-for-aaa
 | 
						|
// bbb-SAME:                       emitted-only-for-bbb
 | 
						|
```
 |