Changeset 90c3b1c for src/examples


Ignore:
Timestamp:
Mar 2, 2016, 4:59:19 PM (10 years ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, string, with_gc
Children:
bdad1679
Parents:
ac1ed49
Message:

compile CFA with C++11, further update refrat with lstlisting macros, support varags, enumeration initialization, add implicit separators to output streams, update example programs that print

Location:
src/examples
Files:
2 added
11 edited

Legend:

Unmodified
Added
Removed
  • src/examples/Makefile.in

    rac1ed49 r90c3b1c  
    189189          esac; \
    190190        done; \
    191         echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/examples/Makefile'; \
     191        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/examples/Makefile'; \
    192192        $(am__cd) $(top_srcdir) && \
    193           $(AUTOMAKE) --gnu src/examples/Makefile
     193          $(AUTOMAKE) --foreign src/examples/Makefile
    194194.PRECIOUS: Makefile
    195195Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
  • src/examples/abs.c

    rac1ed49 r90c3b1c  
    1010// Created On       : Thu Jan 28 18:26:16 2016
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Wed Feb 17 09:32:04 2016
    13 // Update Count     : 44
     12// Last Modified On : Wed Mar  2 15:07:26 2016
     13// Update Count     : 51
    1414//
    1515
     
    2020        char ch = -65;
    2121        sout | "char\t\t\t"                                     | ch     | "\tabs " | abs( ch ) | endl;
    22         sout | "signed int\t\t"                         | -65    | "\tabs " | abs( -65 ) | endl;
    23         sout | "signed long int\t\t"            | -65l   | "\tabs " | abs( -65l ) | endl;
    24         sout | "signed long long int\t"         | -65ll  | "\tabs " | abs( -65ll ) | endl;
    25         sout | "float\t\t\t"                            | -65.0f | "\tabs " | abs( -65.0f ) | endl;
    26         sout | "double\t\t\t"                           | -65.0  | "\tabs " | abs( -65.0 ) | endl;
    27         sout | "long double\t\t"                        | -65.0l | "\tabs " | abs( -65.0l ) | endl;
    28         sout | "float _Complex\t\t"                     | -65.0F-2.0iF | "\tabs " | abs( -65.0F-2.0iF ) | endl;
    29         sout | "double _Complex\t\t"            | -65.0D-2.0iD | "\tabs " | abs( -65.0D-2.0iD ) | endl;
    30         sout | "long double _Complex\t"         | -65.0L-2.0iL | "\tabs " | abs( -65.0L-2.0iL ) | endl;
     22        sout | "signed int\t\t"                         | -65    | "\tabs" | abs( -65 ) | endl;
     23        sout | "signed long int\t\t"            | -65l   | "\tabs" | abs( -65l ) | endl;
     24        sout | "signed long long int\t"         | -65ll  | "\tabs" | abs( -65ll ) | endl;
     25        sout | "float\t\t\t"                            | -65.0f | "\tabs" | abs( -65.0f ) | endl;
     26        sout | "double\t\t\t"                           | -65.0  | "\tabs" | abs( -65.0 ) | endl;
     27        sout | "long double\t\t"                        | -65.0l | "\tabs" | abs( -65.0l ) | endl;
     28        sout | "float _Complex\t\t"                     | -65.0F-2.0iF | "\tabs" | abs( -65.0F-2.0iF ) | endl;
     29        sout | "double _Complex\t\t"            | -65.0D-2.0iD | "\tabs" | abs( -65.0D-2.0iD ) | endl;
     30        sout | "long double _Complex\t"         | -65.0L-2.0iL | "\tabs" | abs( -65.0L-2.0iL ) | endl;
    3131} // main
    3232
  • src/examples/ato.c

    rac1ed49 r90c3b1c  
    1111// Created On       : Thu Feb  4 08:10:57 2016
    1212// Last Modified By : Peter A. Buhr
    13 // Last Modified On : Wed Feb 17 11:44:03 2016
    14 // Update Count     : 42
     13// Last Modified On : Mon Feb 29 17:57:35 2016
     14// Update Count     : 44
    1515//
    1616
     
    2424int main( void ) {
    2525        int i = ato( "-123" );
    26         sout | i | ' ' | "-123" | endl;
     26        sout | i | "-123" | endl;
    2727        unsigned int ui = ato( "123" );
    28         sout | ui | ' ' | "123" | endl;
     28        sout | ui | "123" | endl;
    2929        long int li = ato( "-123" );
    30         sout | li | ' ' | "-123" | endl;
     30        sout | li | "-123" | endl;
    3131        unsigned long int uli = ato( "123" );
    32         sout | uli | ' ' | "123" | endl;
     32        sout | uli | "123" | endl;
    3333        long long int lli = ato( "-123" );
    34         sout | lli | ' ' | "-123" | endl;
     34        sout | lli | "-123" | endl;
    3535        unsigned long long int ulli = ato( "123" );
    36         sout | ulli | ' ' | "123" | endl;
     36        sout | ulli | "123" | endl;
    3737        float f = ato( "-123.456" );
    38         sout | f | ' ' | "-123.456" | endl;
     38        sout | f | "-123.456" | endl;
    3939        double d = ato( "-123.4567890123456" );
    40         sout | d | ' ' | "-123.4567890123456" | endl;
     40        sout | d | "-123.4567890123456" | endl;
    4141        long double ld = ato( "-123.45678901234567890123456789" );
    42         sout | ld | ' ' | "-123.45678901234567890123456789" | endl;
     42        sout | ld | "-123.45678901234567890123456789" | endl;
    4343        float _Complex fc = ato( "-123.456-123.456i" );
    44         sout | fc | ' ' | "-123.456-123.456i" | endl;
     44        sout | fc | "-123.456-123.456i" | endl;
    4545        double _Complex dc = ato( "-123.4567890123456+123.4567890123456i" );
    46         sout | dc | ' ' | "-123.4567890123456+123.4567890123456i" | endl;
     46        sout | dc | "-123.4567890123456+123.4567890123456i" | endl;
    4747        long double _Complex ldc = ato( "123.45678901234567890123456789-123.45678901234567890123456789i" );
    48         sout | ldc | ' ' | "123.45678901234567890123456789-123.45678901234567890123456789i" | endl;
     48        sout | ldc | "123.45678901234567890123456789-123.45678901234567890123456789i" | endl;
    4949        long double _Complex ldc2 = ato( "123.45678901234-123.4567890i" );
    50         sout | ldc2 | ' ' | "123.45678901234567890123456789-123.45678901234567890123456789i" | endl;
     50        sout | ldc2 | "123.45678901234-123.4567890i" | endl;
    5151} // main
    5252
  • src/examples/fstream_test.c

    rac1ed49 r90c3b1c  
    1010// Created On       : Wed May 27 17:56:53 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Wed Feb 17 11:45:43 2016
    13 // Update Count     : 43
     12// Last Modified On : Wed Mar  2 15:12:21 2016
     13// Update Count     : 51
    1414//
    1515
     
    1818int main( void ) {
    1919        int nombre;
    20         sout | "Entrez un nombre, s'il vous plaît:\n";
     20        sout | "Entrez un nombre, s'il vous plaît:" | endl;
    2121        sin  | &nombre;
    22         sout | "Vous avez entré " | nombre | " stocké à l'adresse " | &nombre | endl;
    23         sout | "nombre " | nombre | " est "
    24                  | (nombre > 0 ? "plus grand que" :
    25                    nombre == 0 ? "égal à" : "moins de")
    26                  | " zéro" | endl;
     22        sout | "Vous avez entré" | nombre | "stocké à l'adresse" | &nombre | endl;
     23        sout | "nombre" | nombre | "est"
     24                 | (nombre > 0 ? "plus grand que" : nombre == 0 ? "égal à" : "moins de")
     25                 | "zéro" | endl;
    2726
    28         sout | "Entrez trois nombres, s'il vous plaît:\n";
     27        sout | "Entrez trois nombres, s'il vous plaît: " | endl;
    2928        int i, j, k;
    3029        sin  | &i | &j | &k;
    31         sout | "Vous avez entré " | "i:" | i | " j:" | j | " k:" | k | endl;
    32 
    33         sout | 3 | ' ' | 3.5 | ' ' | 'a' | ' ' | "abc" | endl;
     30        sout | "Vous avez entré" | "i:" | i | "j:" | j | "k:" | k | endl;
    3431}
    3532
  • src/examples/hello.c

    rac1ed49 r90c3b1c  
    1010// Created On       : Wed May 27 17:56:53 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Wed Feb 17 12:11:45 2016
    13 // Update Count     : 8
     12// Last Modified On : Mon Feb 29 18:06:17 2016
     13// Update Count     : 10
    1414//
    1515
     
    1717
    1818int main() {
    19         sout | "Bonjour au monde!\n";
     19        sout | "Bonjour au monde!" | endl;
    2020}
    2121
  • src/examples/identity.c

    rac1ed49 r90c3b1c  
    1010// Created On       : Wed May 27 17:56:53 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Wed Feb 17 12:17:32 2016
    13 // Update Count     : 10
     12// Last Modified On : Mon Feb 29 23:40:45 2016
     13// Update Count     : 12
    1414//
    1515
  • src/examples/minmax.c

    rac1ed49 r90c3b1c  
    1010// Created On       : Wed May 27 17:56:53 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Wed Feb 17 12:17:53 2016
    13 // Update Count     : 47
     12// Last Modified On : Mon Feb 29 23:45:16 2016
     13// Update Count     : 49
    1414//
    1515
     
    2323
    2424        sout | "char\t\t\t"                                     | 'z' | ' ' | 'a' | "\tmin " | min( 'z', 'a' ) | endl;
    25         sout | "signed int\t\t"                         | 4 | ' ' | 3 | "\tmin " | min( 4, 3 ) | endl;
    26         sout | "unsigned int\t\t"                       | 4u | ' ' | 3u | "\tmin " | min( 4u, 3u ) | endl;
    27         sout | "signed long int\t\t"            | 4l | ' ' | 3l | "\tmin " | min( 4l, 3l ) | endl;
    28         sout | "unsigned long int\t"            | 4ul | ' ' | 3ul | "\tmin " | min( 4ul, 3ul ) | endl;
    29         sout | "signed long long int\t"         | 4ll | ' ' | 3ll | "\tmin " | min( 4ll, 3ll ) | endl;
    30         sout | "unsigned long long int\t"       | 4ull | ' ' | 3ull | "\tmin " | min( 4ull, 3ull ) | endl;
    31         sout | "float\t\t\t"                            | 4.0f | ' ' | 3.1f | "\tmin " | min( 4.0f, 3.1f ) | endl;
    32         sout | "double\t\t\t"                           | 4.0 | ' ' | 3.1 | "\tmin " | min( 4.0, 3.1 ) | endl;
    33         sout | "long double\t\t"                        | 4.0l | ' ' | 3.1l | "\tmin " | min( 4.0l, 3.1l ) | endl;
     25        sout | "signed int\t\t"                         | 4 | 3 | "\tmin" | min( 4, 3 ) | endl;
     26        sout | "unsigned int\t\t"                       | 4u | 3u | "\tmin" | min( 4u, 3u ) | endl;
     27        sout | "signed long int\t\t"            | 4l | 3l | "\tmin" | min( 4l, 3l ) | endl;
     28        sout | "unsigned long int\t"            | 4ul | 3ul | "\tmin" | min( 4ul, 3ul ) | endl;
     29        sout | "signed long long int\t"         | 4ll | 3ll | "\tmin" | min( 4ll, 3ll ) | endl;
     30        sout | "unsigned long long int\t"       | 4ull | 3ull | "\tmin" | min( 4ull, 3ull ) | endl;
     31        sout | "float\t\t\t"                            | 4.0f | 3.1f | "\tmin" | min( 4.0f, 3.1f ) | endl;
     32        sout | "double\t\t\t"                           | 4.0 | 3.1 | "\tmin" | min( 4.0, 3.1 ) | endl;
     33        sout | "long double\t\t"                        | 4.0l | 3.1l | "\tmin" | min( 4.0l, 3.1l ) | endl;
    3434
    3535        sout | endl;
    3636
    3737        sout | "char\t\t\t"                                     | 'z' | ' ' | 'a' | "\tmax " | max( 'z', 'a' ) | endl;
    38         sout | "signed int\t\t"                         | 4 | ' ' | 3 | "\tmax " | max( 4, 3 ) | endl;
    39         sout | "unsigned int\t\t"                       | 4u | ' ' | 3u | "\tmax " | max( 4u, 3u ) | endl;
    40         sout | "signed long int\t\t"            | 4l | ' ' | 3l | "\tmax " | max( 4l, 3l ) | endl;
    41         sout | "unsigned long int\t"            | 4ul | ' ' | 3ul | "\tmax " | max( 4ul, 3ul ) | endl;
    42         sout | "signed long long int\t"         | 4ll | ' ' | 3ll | "\tmax " | max( 4ll, 3ll ) | endl;
    43         sout | "unsigned long long int\t"       | 4ull | ' ' | 3ull | "\tmax " | max( 4ull, 3ull ) | endl;
    44         sout | "float\t\t\t"                            | 4.0f | ' ' | 3.1f | "\tmax " | max( 4.0f, 3.1f ) | endl;
    45         sout | "double\t\t\t"                           | 4.0 | ' ' | 3.1 | "\tmax " | max( 4.0, 3.1 ) | endl;
    46         sout | "long double\t\t"                        | 4.0l | ' ' | 3.1l | "\tmax " | max( 4.0l, 3.1l ) | endl;
     38        sout | "signed int\t\t"                         | 4 | 3 | "\tmax" | max( 4, 3 ) | endl;
     39        sout | "unsigned int\t\t"                       | 4u | 3u | "\tmax" | max( 4u, 3u ) | endl;
     40        sout | "signed long int\t\t"            | 4l | 3l | "\tmax" | max( 4l, 3l ) | endl;
     41        sout | "unsigned long int\t"            | 4ul | 3ul | "\tmax" | max( 4ul, 3ul ) | endl;
     42        sout | "signed long long int\t"         | 4ll | 3ll | "\tmax" | max( 4ll, 3ll ) | endl;
     43        sout | "unsigned long long int\t"       | 4ull | 3ull | "\tmax" | max( 4ull, 3ull ) | endl;
     44        sout | "float\t\t\t"                            | 4.0f | 3.1f | "\tmax" | max( 4.0f, 3.1f ) | endl;
     45        sout | "double\t\t\t"                           | 4.0 | 3.1 | "\tmax" | max( 4.0, 3.1 ) | endl;
     46        sout | "long double\t\t"                        | 4.0l | 3.1l | "\tmax" | max( 4.0l, 3.1l ) | endl;
    4747} // main
    4848
  • src/examples/quad.c

    rac1ed49 r90c3b1c  
    1010// Created On       : Wed May 27 17:56:53 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Wed Feb 17 12:19:24 2016
    13 // Update Count     : 6
     12// Last Modified On : Tue Mar  1 08:24:56 2016
     13// Update Count     : 7
    1414//
    1515
     
    2828int main() {
    2929        int N = 2;
    30         sout | "result of quad of " | N | " is " | quad( N ) | endl;
     30        sout | "result of quad of" | N | "is" | quad( N ) | endl;
    3131}
    3232
  • src/examples/sum.c

    rac1ed49 r90c3b1c  
    1010// Created On       : Wed May 27 17:56:53 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Tue Feb 16 23:49:31 2016
    13 // Update Count     : 189
     12// Last Modified On : Wed Mar  2 14:31:45 2016
     13// Update Count     : 193
    1414//
    1515
     
    4747                a[i] = v;
    4848        } // for
    49         sout | "sum from " | low | " to " | High | " is "
    50                  | (int)sum( size, a ) | ", check " | (int)s | endl;
     49        sout | "sum from" | low | "to" | High | "is"
     50                 | (int)sum( size, a ) | "" | ", check" | (int)s | endl;
    5151
    5252        int s = 0, a[size], v = low;
     
    5555                a[i] = (int)v;
    5656        } // for
    57         sout | "sum from " | low | " to " | High | " is "
    58                  | sum( size, (int *)a ) | ", check " | (int)s | endl;
     57        sout | "sum from" | low | "to" | High | "is"
     58                 | sum( size, (int *)a ) | "" | ", check" | (int)s | endl;
    5959
    6060        float s = 0.0, a[size], v = low / 10.0;
     
    6363                a[i] = (float)v;
    6464        } // for
    65         sout | "sum from " | low / 10.0 | " to " | High / 10.0 | " is "
    66                  | sum( size, (float *)a ) | ", check " | (float)s | endl;
     65        sout | "sum from" | low / 10.0 | "to" | High / 10.0 | "is"
     66                 | sum( size, (float *)a ) | "" | ", check" | (float)s | endl;
    6767
    6868        double s = 0, a[size], v = low / 10.0;
     
    7171                a[i] = (double)v;
    7272        } // for
    73         sout | "sum from " | low / 10.0 | " to " | High / 10.0 | " is "
    74                  | sum( size, (double *)a ) | ", check " | (double)s | endl;
     73        sout | "sum from" | low / 10.0 | "to" | High / 10.0 | "is"
     74                 | sum( size, (double *)a ) | "" | ", check" | (double)s | endl;
    7575
    7676        struct S { int i, j; } 0 = { 0, 0 }, 1 = { 1, 1 };
     
    7979        S ++?( S *t ) { *t += 1; return *t; }
    8080        S ?++( S *t ) { S temp = *t; *t += 1; return temp; }
    81         ofstream * ?|?( ofstream * os, S v ) { return os | v.i | ' ' | v.j; }
     81        ofstream * ?|?( ofstream * os, S v ) { return os | v.i | v.j; }
    8282
    8383        S s = 0, a[size], v = { low, low };
     
    8686                a[i] = (S)v;
    8787        } // for
    88         sout | "sum from " | low | " to " | High | " is "
    89                  | sum( size, (S *)a ) | ", check " | (S)s | endl;
     88        sout | "sum from" | low | "to" | High | "is"
     89                 | sum( size, (S *)a ) | "" | ", check" | (S)s | endl;
    9090} // main
    9191
  • src/examples/swap.c

    rac1ed49 r90c3b1c  
    1010// Created On       : Wed May 27 17:56:53 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Wed Feb 17 12:22:12 2016
    13 // Update Count     : 64
     12// Last Modified On : Wed Mar  2 16:15:11 2016
     13// Update Count     : 65
    1414//
    1515
     
    5454
    5555        float f1 = 1.5, f2 = 2.5;
    56         sout | "float\t\t\t" | f1 | ' ' | f2 | "\t\t\tswap ";
     56        sout | "float\t\t\t" | f1 | ' ' | f2 | "\t\tswap ";
    5757        swap( &f1, &f2 );
    5858        sout | '\t' | f1 | ' ' | f2 | endl;
    5959
    6060        double d1 = 1.5, d2 = 2.5;
    61         sout | "double\t\t\t" | d1 | ' ' | d2 | "\t\t\tswap ";
     61        sout | "double\t\t\t" | d1 | ' ' | d2 | "\t\tswap ";
    6262        swap( &d1, &d2 );
    6363        sout | '\t' | d1 | ' ' | d2 | endl;
    6464
    6565        long double ld1 = 1.5, ld2 = 2.5;
    66         sout | "long double\t\t" | ld1 | ' ' | ld2 | "\t\t\tswap ";
     66        sout | "long double\t\t" | ld1 | ' ' | ld2 | "\t\tswap ";
    6767        swap( &ld1, &ld2 );
    6868        sout | '\t' | ld1 | ' ' | ld2 | endl;
  • src/examples/tests/vector_test.out.txt

    rac1ed49 r90c3b1c  
    11enter N elements and C-d on a separate line:
    22Array elements:
    3 1 2 3 4 5 
     31 2 3 4 5
    44Array elements reversed:
    5 5 4 3 2 1 
     55 4 3 2 1
Note: See TracChangeset for help on using the changeset viewer.