modernc.org/cc@v1.0.1/v2/testdata/bug/7.c (about)

     1  #include <assert.h>
     2  
     3  int i;
     4  int *pi = &i;
     5  int **ppi = &pi;
     6  
     7  int main() {
     8  	assert(pi == &i);
     9  	assert(ppi == &pi);
    10  	assert((void*)pi != (void*)ppi);
    11  	assert(&pi);
    12  	assert(&ppi);
    13  
    14  	int *spi = pi;
    15  	int **sppi = ppi;
    16  
    17  	assert(!i);
    18  	assert(!*pi);
    19  	assert(!**ppi);
    20  
    21  	i = 42;
    22  	assert(i == 42);
    23  	assert(*pi == 42);
    24  	assert(**ppi == 42);
    25  
    26  	*pi = 24;
    27  	assert(i == 24);
    28  	assert(*pi == 24);
    29  	assert(**ppi == 24);
    30  	assert(pi == spi);
    31  	assert(ppi == sppi);
    32  
    33  	**ppi = 314;
    34  	assert(i == 314);
    35  	assert(*pi == 314);
    36  	assert(**ppi == 314);
    37  	assert(pi == spi);
    38  	assert(ppi == sppi);
    39  }