Files correlati : Commento : Aggiunto il preprocessore c++ mcpp per sostituire il compilatore nella compilazione delle maschere.
		
			
				
	
	
		
			14 lines
		
	
	
		
			822 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			14 lines
		
	
	
		
			822 B
		
	
	
	
		
			C
		
	
	
	
	
	
/* e_23_3.c:    ## operator shall not occur at the beginning or at the end of
 | 
						|
        replacement list for either form of macro definition.   */
 | 
						|
 | 
						|
/* { dg-do preprocess } */
 | 
						|
 | 
						|
/* 23.3:    In object-like macro.   */
 | 
						|
#define con     ## name     /* { dg-error "'##' cannot appear at either end of a macro expansion| `##' at start of macro definition| No token before ##" } */
 | 
						|
#define cat     12 ##       /* { dg-error "'##' cannot appear at either end of a macro expansion| No token after ##" } */
 | 
						|
 | 
						|
/* 23.4:    In function-like macro. */
 | 
						|
#define CON( a, b)  ## a ## b   /* { dg-error "'##' cannot appear at either end of a macro expansion| `##' at start of macro definition| No token before ##" } */
 | 
						|
#define CAT( b, c)  b ## c ##   /* { dg-error "'##' cannot appear at either end of a macro expansion| No token after ##" } */
 | 
						|
 |