mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-10-31 13:04:42 +00:00 
			
		
		
		
	 078332fdc8
			
		
	
	
		078332fdc8
		
	
	
	
	
		
			
			Implements https://www.github.com/rust-lang/rust/issues/141358. This has 2 primary benefits: 1. For rustdoc-json consumers, they no longer need to parse strings of attributes, but it's there in a structured and normalized way. 2. For rustc contributors, the output of HIR pretty printing is no longer a versioned thing in the output. People can work on https://github.com/rust-lang/rust/issues/131229 without needing to bump `FORMAT_VERSION`. (Over time, as the attribute refractor continues, I expect we'll add new things to `rustdoc_json_types::Attribute`. But this can be done separately to the rustc changes).
		
			
				
	
	
		
			10 lines
		
	
	
		
			288 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			10 lines
		
	
	
		
			288 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
| //@ edition: 2024
 | |
| #![no_std]
 | |
| 
 | |
| // The representation of `#[unsafe(export_name = ..)]` in rustdoc in edition 2024
 | |
| // doesn't mention the `unsafe`.
 | |
| 
 | |
| //@ is "$.index[?(@.name=='example')].attrs" '[{"export_name": "altered"}]'
 | |
| #[unsafe(export_name = "altered")]
 | |
| pub extern "C" fn example() {}
 |