source: tests/identity.cfa @ ded6c2a6

ast-experimental
Last change on this file since ded6c2a6 was fd54fef, checked in by Michael Brooks <mlbrooks@…>, 4 years ago

Converting the project to use the new syntax for otype, dtype and ttytpe.

Changed prelude (gen), libcfa and test suite to use it. Added a simple deprecation rule of the old syntax to the parser; we might wish to support both syntaxes "officially," like with an extra CLI switch, but this measure should serve as a simple reminder for our team to try the new syntax.

  • Property mode set to 100644
File size: 1.2 KB
Line 
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// identity.cfa --
8//
9// Author           : Peter A. Buhr
10// Created On       : Wed May 27 17:56:53 2015
11// Last Modified By : Peter A. Buhr
12// Last Modified On : Tue Dec  4 21:38:59 2018
13// Update Count     : 20
14//
15
16#include <fstream.hfa>
17
18forall( T )
19T identity( T t ) {
20        return t;
21}
22
23int main() {
24        sout | "char\t\t\t"                                     | identity( 'z' );
25        sout | "signed int\t\t"                         | identity( 4 );
26        sout | "unsigned int\t\t"                       | identity( 4u );
27        sout | "signed long int\t\t"            | identity( 4l );
28        sout | "unsigned long int\t"            | identity( 4ul );
29        sout | "signed long long int\t"         | identity( 4ll );
30        sout | "unsigned long long int\t"       | identity( 4ull );
31        sout | "float\t\t\t"                            | identity( 4.1f );
32        sout | "double\t\t\t"                           | identity( 4.1 );
33        sout | "long double\t\t"                        | identity( 4.1l );
34        sout | "float _Complex\t\t"                     | identity( -4.1F-2.0iF );
35        sout | "double _Complex\t\t"            | identity( -4.1D-2.0iD );
36        sout | "long double _Complex\t"         | identity( -4.1L-2.0iL );
37}
38
39// Local Variables: //
40// tab-width: 4 //
41// compile-command: "cfa identity.cfa" //
42// End: //
Note: See TracBrowser for help on using the repository browser.