modernc.org/ccgo/v3@v3.16.14/lib/testdata/bug/condfn.c (about)

     1  int f(int n) {
     2  	return 2*n;
     3  }
     4  
     5  int g(int n) {
     6  	return 3*n;
     7  }
     8  
     9  int h(int c, int n) {
    10  	return (c ? f : g)(n);
    11  }
    12  
    13  int i(int c, int n) {
    14  	return (c ? &f : &g)(n);
    15  }
    16  
    17  int main() {
    18  	if (h(0, 10) != 30) {
    19  		return __LINE__;
    20  	}
    21  
    22  	if (h(1, 20) != 40) {
    23  		return __LINE__;
    24  	}
    25  }