15 lines
		
	
	
		
			423 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			15 lines
		
	
	
		
			423 B
		
	
	
	
		
			C++
		
	
	
	
//RUN: %clang_analyze_cc1 -std=c++17 -analyze -analyzer-checker=core -verify %s
 | 
						|
 | 
						|
// expected-no-diagnostics
 | 
						|
 | 
						|
// Notice the weird alignment.
 | 
						|
struct alignas(1024) S {};
 | 
						|
 | 
						|
void foo() {
 | 
						|
  // Operator new() here is the C++17 aligned new that takes two arguments:
 | 
						|
  // size and alignment. Size is passed implicitly as usual, and alignment
 | 
						|
  // is passed implicitly in a similar manner.
 | 
						|
  S *s = new S; // no-warning
 | 
						|
  delete s;
 | 
						|
}
 |