// // Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo // // The contents of this file are covered under the licence agreement in the // file "LICENCE" distributed with Cforall. // // functions.c -- // // Author : Peter A. Buhr // Created On : Wed Aug 17 08:39:58 2016 // Last Modified By : Peter A. Buhr // Last Modified On : Wed Aug 17 08:40:52 2016 // Update Count : 1 // // ANSI function definitions void h(void) {} int f ( int (void), int (int), int ((void)), int ((int)), void g(void) ) { (*g)(); g(); g = h; } int f1() {} int (f2()) {} int (*f3())() {} int *((f4())) {} int ((*f5()))() {} int *f6() {} int *(f7)() {} int **f8() {} int * const *(f9)() {} int (*f10())[] {} int (*f11())[][3] {} int ((*f12())[])[3] {} // "implicit int" otype specifier (not ANSI) fII1( int i ) {} const fII2( int i ) {} extern fII3( int i ) {} extern const fII4( int i ) {} *fII5() {} const *fII6() {} const long *fII7() {} static const long *fII8() {} const static long *fII9() {} // K&R function definitions fO1( i ) int i; {} int fO2( i ) int i; {} const fO3( i ) int i; {} extern fO4( i ) int i; {} extern const fO5( i ) int i; {} // Cforall extensions [] f( ); [int] f( ); [] f(int); [int] f(int); [] f( ) {} [int] f( ) {} [] f(int) {} [int] f(int) {} [int x] f( ); [] f(int x); [int x] f(int x); [int x] f( ) {} [] f(int x) {} [int x] f(int x) {} [int, int x] f( ); [] f(int, int x); [int, int x] f(int, int x); [int, int x] f( ) {} [] f(int, int x) {} [int, int x] f(int, int x) {} [int, int x, int] f( ); [] f(int, int x, int); [int, int x, int] f(int, int x, int); [int, int x, int] f( ) {} [] f(int, int x, int) {} [int, int x, int] f(int, int x, int) {} [int, int x, * int y] f( ); [] f(int, int x, * int y); [int, int x, * int y] f(int, int x, * int y); [int, int x, * int y] f( ) {} [] f(int, int x, * int y) {} [int, int x, * int y] f(int, int x, * int y) {} [ int ] f11( int ), f12; // => int f11( int ), f12( int ); [int] f( int ( int, int p ), [int](int) ) { int (*(*p)[][10])[][3]; * [][10] * [][3] int p; * [] * [int](int) p; } static const int *f1() {} static [ const int ] f2() {} static inline [ const * int ] f3() {} static inline [ const [ * int, int ] ] f4() {} static [ const [ * int, const int ] ] f5() {} // unnamed parameter int f( int (), int *(), int **(), int * const *(), int * const * const (), int ([]), int ([10]), int *([]), int *([10]), int **([]), int **([10]), int * const *([]), int * const *([10]), int * const * const ([]), int * const * const ([10]) ); int f( int (), int *(), int **(), int * const *(), int * const * const (), int ([]), int ([10]), int *([]), int *([10]), int **([]), int **([10]), int * const *([]), int * const *([10]), int * const * const ([]), int * const * const ([10]) ) { } typedef int T; int f( T (*f), T t ) { T (T); } // errors //int f()[] {} //int (f[])() {} //int f[]() {} //int ((*f15())())[] {} // Local Variables: // // tab-width: 4 // // compile-command: "cfa functions.c" // // End: //