source: examples/abstype.c @ 04b73b6

ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
Last change on this file since 04b73b6 was bf71cfd, checked in by Thierry Delisle <tdelisle@…>, 6 years ago

Moved up many directories in source

  • Property mode set to 100644
File size: 822 bytes
RevLine 
[86bd7c1f]1//
2// Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
3//
4// The contents of this file are covered under the licence agreement in the
5// file "LICENCE" distributed with Cforall.
6//
7// abstype.c --
8//
9// Author           : Richard C. Bilson
10// Created On       : Wed May 27 17:56:53 2015
11// Last Modified By : Peter A. Buhr
[ca26509]12// Last Modified On : Tue Jun 14 14:27:48 2016
13// Update Count     : 9
[86bd7c1f]14//
[a0d9f94]15
[7937abf]16otype T | { T x( T ); };
[a0d9f94]17
18T y( T t ) {
[86bd7c1f]19        T t_instance;
20        return x( t );
[a0d9f94]21}
22
[ca26509]23forall( otype T ) lvalue T *?( T * );
[7937abf]24int ?++( int * );
25int ?=?( int *, int );
[ca26509]26forall( dtype DT ) DT * ?=?( DT **, DT * );
[a0d9f94]27
[7937abf]28otype U = int *;
[a0d9f94]29
30U x( U u ) {
[86bd7c1f]31        U u_instance = u;
32        (*u)++;
33        return u;
[a0d9f94]34}
35
36int *break_abstraction( U u ) {
[86bd7c1f]37        return u;
[a0d9f94]38}
[86bd7c1f]39
40// Local Variables: //
41// tab-width: 4 //
42// compile-command: "cfa abstype.c" //
43// End: //
Note: See TracBrowser for help on using the repository browser.