Changeset bada452 for tests/ctrl-flow


Ignore:
Timestamp:
Jan 28, 2025, 4:12:53 PM (8 months ago)
Author:
Andrew Beach <ajbeach@…>
Branches:
master
Children:
c699602
Parents:
71ca5b9
Message:

Removed warnings from serveral tests and removed them from the ..._TO_INVESTIGATE list. One test triggered a Cforall warning and a new test to check that has been added. collections/vector-demo has no warnings in its body, but the library it uses does have warnings and will have to move after that is fixed.

Location:
tests/ctrl-flow
Files:
2 added
2 edited

Legend:

Unmodified
Added
Removed
  • tests/ctrl-flow/labelledExit.cfa

    r71ca5b9 rbada452  
    1 // 
     1//
    22// Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo
    33//
    44// The contents of this file are covered under the licence agreement in the
    55// file "LICENCE" distributed with Cforall.
    6 // 
    7 // labelledExit.cfa -- 
    8 // 
     6//
     7// labelledExit.cfa --
     8//
    99// Author           : Peter A. Buhr
    1010// Created On       : Wed Aug 10 07:29:39 2016
     
    1212// Last Modified On : Fri Jan 17 14:18:15 2025
    1313// Update Count     : 14
    14 // 
     14//
    1515
    1616int foo() {
    17         int i;
    18         int x, y;
     17        int i = 0;
     18        int x = 0, y = 0;
    1919
    20         x = 0; y = 0;
    21 
    22         // block, labelled exits
     20        // block, labelled exits
    2321
    2422  Block: {
    25                 if ( x == y ) {
    26                         for ( ; i < y; ) {
    27                                 y += 1;
    28                                 if ( y < 10 ) break Block;
    29                         }
    30                 }
    31         }
     23                if ( x == y ) {
     24                        for ( ; i < y; ) {
     25                                y += 1;
     26                                if ( y < 10 ) break Block;
     27                        }
     28                }
     29        }
    3230
    33         // loops, labelled exits
     31        // loops, labelled exits
    3432
    35   w1: while ( y == 10 );
     33  w1: while ( y == 10 ) break w1;
    3634
    3735  w2: while ( x < 10 ) {
    38                 while (y < 5 ) {
    39                         if ( y == 3 ) break w2;
    40                 }
    41                 x += 1;
    42         }
     36                while (y < 5 ) {
     37                        if ( y == 3 ) break w2;
     38                }
     39                x += 1;
     40        }
    4341
    4442  A: for ( i = 0; i < 10; i += 1 ) {
    45           B: for ( i = 0; i < 10; i += 1 ) {
    46                   C: for ( i = 0; i < 10; i += 1 ) {
    47                                 goto A;
    48                                 goto B;
    49                                 goto C;
    50                                 continue A;
    51                                 continue B;
    52                                 continue C;
    53                                 continue;
    54                                 break A;
    55                                 break B;
    56                                 break C;
    57                                 break;
    58                         }
    59                 }
    60         }
     43          B: for ( i = 0; i < 10; i += 1 ) {
     44                  C: for ( i = 0; i < 10; i += 1 ) {
     45                                goto A;
     46                                goto B;
     47                                goto C;
     48                                continue A;
     49                                continue B;
     50                                continue C;
     51                                continue;
     52                                break A;
     53                                break B;
     54                                break C;
     55                                break;
     56                        }
     57                }
     58        }
    6159
    6260  D: for () {
    63                 break D;
    64                 continue D;
    65         }
     61                break D;
     62                continue D;
     63        }
    6664
    6765  Z : i += 1;
    68         goto Z;
     66        goto Z;
    6967  X: Y: for () {
    70                 i += 1;
    71                 if ( i > 5 ) continue X;
    72                 if ( i < 5 ) break X;
    73                 if ( i < 5 ) break Y;
    74                 break;
    75         }
     68                i += 1;
     69                if ( i > 5 ) continue X;
     70                if ( i < 5 ) break X;
     71                if ( i < 5 ) break Y;
     72                break;
     73        }
    7674  XX: for () {
    77           YY: for () {
    78                   ZZ: for () {
    79                                 i += 1;
    80                                 if ( i > 5 ) continue XX;
    81                                 if ( i < 5 ) continue YY;
    82                                 if ( i < 5 ) continue ZZ;
    83                                 if ( i > 5 ) break XX;
    84                                 if ( i < 5 ) break YY;
    85                                 if ( i < 5 ) break ZZ;
    86                                 break;
    87                         }
    88                 }
    89         }
     75          YY: for () {
     76                  ZZ: for () {
     77                                i += 1;
     78                                if ( i > 5 ) continue XX;
     79                                if ( i < 5 ) continue YY;
     80                                if ( i < 5 ) continue ZZ;
     81                                if ( i > 5 ) break XX;
     82                                if ( i < 5 ) break YY;
     83                                if ( i < 5 ) break ZZ;
     84                                break;
     85                        }
     86                }
     87        }
    9088
    91         for () ;
    92         for ( int i = 0 ;; ) ;
    93         for (  ; i < 0; ) ;
    94         for (  ; ; i += 1 ) ;
     89        for () ;
     90        for ( int i = 0 ;; ) ++i;
     91        for (  ; i < 0; ) ;
     92        for (  ; ; i += 1 ) ;
    9593  L0:  L1:  L2:  L3:  L4:  L5:  L6:  L7:  L8:  L9:
    9694  L10: L11: L12: L13: L14: L15: L16: L17: L18: L19:
    9795  L20: L21: L22: L23: L24: L25: L26: L27: L28: L29:
    9896  L31: L32: L33: L34:
    99         for () {
    100                 break L0;
    101         }
     97        for () {
     98                break L0;
     99                break L1;  break L2;  break L3;  break L4;  break L5;  break L6;
     100                break L7;  break L8;  break L9;  break L10; break L11; break L12;
     101                break L13; break L14; break L15; break L16; break L17; break L18;
     102                break L19; break L20; break L21; break L22; break L23; break L24;
     103                break L25; break L26; break L27; break L28; break L29; break L31;
     104                break L32; break L33; break L34;
     105        }
    102106
    103         // switch/choose, labelled exits
     107        // switch/choose, labelled exits
    104108
    105109  Switch: switch ( i ) {
    106           default:
    107                 i += 1;
    108           case 0:
    109                 i += 1;
    110                 break Switch;
    111           case 1:
    112                 switch ( i ) {
    113                   case 0:
    114                         break Switch;
    115                   default:
    116                         ; break;
    117                 }
    118         }
     110          default:
     111                i += 1;
     112                fallthrough;
     113          case 0:
     114                i += 1;
     115                break Switch;
     116          case 1:
     117                switch ( i ) {
     118                  case 0:
     119                        break Switch;
     120                  default:
     121                        ; break;
     122                }
     123        }
    119124
    120125  Choose: choose ( i ) {
    121           default:
    122                 i += 1;
    123           case 0:
    124                 i += 1;
    125                 break Choose;
    126           case 1:
    127                 choose ( i ) {
    128                   case 0:
    129                         break;
    130                   default:
    131                         break Choose;
    132                 }
    133                 fallthrough;
    134           case 2:
    135                 i += 1;
    136         }
     126          default:
     127                i += 1;
     128          case 0:
     129                i += 1;
     130                break Choose;
     131          case 1:
     132                choose ( i ) {
     133                  case 0:
     134                        break;
     135                  default:
     136                        break Choose;
     137                }
     138                fallthrough;
     139          case 2:
     140                i += 1;
     141        }
    137142
    138         // all nested control options, labelled exits
     143        // all nested control options, labelled exits
    139144
    140145  Comp: {
     
    148153                                                                break Try;
    149154                                                                break Comp;
    150                                                                 break For;              continue For;
    151                                                                 break While;    continue While;
    152                                                                 break Do;               continue Do;
    153                                                                 break If;
    154                                                                 break Switch2;
     155                                                                break For;              continue For;
     156                                                                break While;    continue While;
     157                                                                break Do;               continue Do;
     158                                                                break If;
     159                                                                break Switch2;
    155160                                                        } // switch
    156161                                                } // if
     
    178183}
    179184
    180 int main( int argc, char const *argv[] ) {
     185int main() {
    181186        printf("done\n");
    182187}
  • tests/ctrl-flow/loop_else.cfa

    r71ca5b9 rbada452  
    2323
    2424        sout | nlOff;                                                                           // turn off auto newline
    25         while () { sout | "empty"; break; } else { sout | "else"; }                                             sout | nl;
    26         do { sout | "empty"; break; } while () else { sout | "else"; }                                  sout | nl;
    27         for () { sout | "empty"; break; } else { sout | "else"; }                                               sout | nl | nl;
     25        while ( true ) { sout | "empty"; break; } else { sout | "else"; }                               sout | nl;
     26        do { sout | "empty"; break; } while ( true ) else { sout | "else"; }                    sout | nl;
     27        for ( ; true ; ) { sout | "empty"; break; } else { sout | "else"; }                             sout | nl | nl;
    2828
    2929        do { sout | "false"; } while (false) else { sout | "else"; }                                    sout | nl | nl;
Note: See TracChangeset for help on using the changeset viewer.