source: translator/examples/quad.c @ c11e31c

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsctordeferred_resndemanglerenumforall-pointer-decaygc_noraiijacob/cs343-translationjenkins-sandboxmemorynew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newstringwith_gc
Last change on this file since c11e31c was 42dcae7, checked in by Peter A. Buhr <pabuhr@…>, 10 years ago

re-inserted remove and reorder hoisted aggregate, fixed example programs

  • Property mode set to 100644
File size: 378 bytes
RevLine 
[a0d9f94]1extern "C" {
[42dcae7]2    #include <stdio.h>
[a0d9f94]3}
4
5forall( type T | { T ?*?( T, T ); } )
6T square( T t ) {
7    return t * t;
8}
9
10forall( type U | { U square( U ); } )
11U quad( U u ) {
12    return square( square( u ) );
13}
14
15int main() {
16    int N = 2;
17    printf( "result of quad of %d is %d\n", N, quad( N ) );
18}
[42dcae7]19
20// Local Variables: //
21// compile-command: "../../bin/cfa quad.c" //
22// End: //
Note: See TracBrowser for help on using the repository browser.