Changes in / [b2e2e34:21a1efb]


Ignore:
Location:
src
Files:
1 added
3 deleted
21 edited

Legend:

Unmodified
Added
Removed
  • src/CodeGen/Generate.cc

    rb2e2e34 r21a1efb  
    3333                /// Removes misc. nodes that should not exist in CodeGen
    3434                struct TreeCleaner {
    35                         void previsit( CompoundStmt * stmt );
     35                        void visit( CompoundStmt * stmt );
    3636
    3737                        static bool shouldClean( Declaration * );
     
    7272
    7373        namespace {
    74                 void TreeCleaner::previsit( CompoundStmt * cstmt ) {
     74                void TreeCleaner::visit( CompoundStmt * cstmt ) {
    7575                        filter( cstmt->kids, [](Statement * stmt) {
    7676                                if ( DeclStmt * declStmt = dynamic_cast< DeclStmt * >( stmt ) ) {
  • src/Parser/ExpressionNode.cc

    rb2e2e34 r21a1efb  
    1010// Created On       : Sat May 16 13:17:07 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Tue Sep 12 10:00:29 2017
    13 // Update Count     : 672
     12// Last Modified On : Sun Sep  3 22:21:21 2017
     13// Update Count     : 639
    1414//
    1515
     
    4949// type.
    5050
    51 extern const Type::Qualifiers noQualifiers;                             // no qualifiers on constants
    52 
    53 static inline bool checkH( char c ) { return c == 'h' || c == 'H'; }
     51extern const Type::Qualifiers noQualifiers;             // no qualifiers on constants
     52
     53static inline bool checkU( char c ) { return c == 'u' || c == 'U'; }
    5454static inline bool checkL( char c ) { return c == 'l' || c == 'L'; }
    55 static inline bool checkZ( char c ) { return c == 'z' || c == 'Z'; }
    56 static inline bool checkU( char c ) { return c == 'u' || c == 'U'; }
    5755static inline bool checkF( char c ) { return c == 'f' || c == 'F'; }
    5856static inline bool checkD( char c ) { return c == 'd' || c == 'D'; }
     
    6967
    7068Expression * build_constantInteger( string & str ) {
    71         static const BasicType::Kind kind[2][5] = {
    72                 // short (h) must be before char (hh)
    73                 { BasicType::ShortSignedInt, BasicType::SignedChar, BasicType::SignedInt, BasicType::LongSignedInt, BasicType::LongLongSignedInt },
    74                 { BasicType::ShortUnsignedInt, BasicType::UnsignedChar, BasicType::UnsignedInt, BasicType::LongUnsignedInt, BasicType::LongLongUnsignedInt },
     69        static const BasicType::Kind kind[2][3] = {
     70                { BasicType::SignedInt, BasicType::LongSignedInt, BasicType::LongLongSignedInt },
     71                { BasicType::UnsignedInt, BasicType::LongUnsignedInt, BasicType::LongLongUnsignedInt },
    7572        };
    7673
     
    7976
    8077        bool dec = true, Unsigned = false;                                      // decimal, unsigned constant
    81         int size;                                                                                       // 0 => short, 1 => char, 2 => int, 3 => long int, 4 => long long int, 5 => size_t
     78        int size;                                                                                       // 0 => int, 1 => long, 2 => long long
    8279        unsigned long long int v;                                                       // converted integral value
    8380        size_t last = str.length() - 1;                                         // last character of constant
    8481        Expression * ret;
    8582
     83        // ROB: what do we do with units on 0 and 1?
    8684        // special constants
    8785        if ( str == "0" ) {
     
    109107
    110108        if ( v <= INT_MAX ) {                                                           // signed int
    111                 size = 2;
     109                size = 0;
    112110        } else if ( v <= UINT_MAX && ! dec ) {                          // unsigned int
    113                 size = 2;
     111                size = 0;
    114112                Unsigned = true;                                                                // unsigned
    115113        } else if ( v <= LONG_MAX ) {                                           // signed long int
    116                 size = 3;
     114                size = 1;
    117115        } else if ( v <= ULONG_MAX && ( ! dec || LONG_MAX == LLONG_MAX ) ) { // signed long int
    118                 size = 3;
     116                size = 1;
    119117                Unsigned = true;                                                                // unsigned long int
    120118        } else if ( v <= LLONG_MAX ) {                                          // signed long long int
    121                 size = 4;
     119                size = 2;
    122120        } else {                                                                                        // unsigned long long int
    123                 size = 4;
     121                size = 2;
    124122                Unsigned = true;                                                                // unsigned long long int
    125123        } // if
    126 
    127         // At least one digit in integer constant, so safe to backup while looking for suffix.
    128124
    129125        if ( checkU( str[last] ) ) {                                            // suffix 'u' ?
    130126                Unsigned = true;
    131                 if ( checkL( str[last - 1] ) ) {                                // suffix 'l' ?
    132                         size = 3;
    133                         if ( checkL( str[last - 2] ) ) {                        // suffix "ll" ?
    134                                 size = 4;
     127                if ( last > 0 && checkL( str[last - 1] ) ) {    // suffix 'l' ?
     128                        size = 1;
     129                        if ( last > 1 && checkL( str[last - 2] ) ) { // suffix 'll' ?
     130                                size = 2;
    135131                        } // if
    136                 } else if ( checkH( str[last - 1] ) ) {                 // suffix 'h' ?
    137                         size = 0;
    138                         if ( checkH( str[last - 2] ) ) {                        // suffix "hh" ?
    139                                 size = 1;
    140                         } // if
    141                         str.erase( last - size - 1, size + 1 );         // remove 'h'/"hh"
    142132                } // if
    143133        } else if ( checkL( str[ last ] ) ) {                           // suffix 'l' ?
    144                 size = 3;
    145                 if ( checkL( str[last - 1] ) ) {                                // suffix 'll' ?
    146                         size = 4;
    147                         if ( checkU( str[last - 2] ) ) {                        // suffix 'u' ?
     134                size = 1;
     135                if ( last > 0 && checkL( str[last - 1] ) ) {    // suffix 'll' ?
     136                        size = 2;
     137                        if ( last > 1 && checkU( str[last - 2] ) ) { // suffix 'u' ?
    148138                                Unsigned = true;
    149139                        } // if
    150                 } else if ( checkU( str[last - 1] ) ) {                 // suffix 'u' ?
    151                         Unsigned = true;
    152                 } // if
    153         } else if ( checkH( str[ last ] ) ) {                           // suffix 'h' ?
    154                 size = 0;
    155                 if ( checkH( str[last - 1] ) ) {                                // suffix "hh" ?
    156                         size = 1;
    157                         if ( checkU( str[last - 2] ) ) {                        // suffix 'u' ?
     140                } else {
     141                        if ( last > 0 && checkU( str[last - 1] ) ) { // suffix 'u' ?
    158142                                Unsigned = true;
    159143                        } // if
    160                 } else if ( checkU( str[last - 1] ) ) {                 // suffix 'u' ?
    161                         Unsigned = true;
    162                 } // if
    163                 str.erase( last - size, size + 1 );                             // remove 'h'/"hh"
    164         } else if ( checkZ( str[last] ) ) {                                     // suffix 'z' ?
    165                 size = 5;
    166                 str.erase( last, 1 );                                                   // remove 'z'
     144                } // if
    167145        } // if
    168146
    169147        ret = new ConstantExpr( Constant( new BasicType( noQualifiers, kind[Unsigned][size] ), str, v ) );
    170         if ( Unsigned && size < 2 ) {                                           // less than int ?
    171                 // int i = -1uh => 65535 not -1, so cast is necessary for unsigned, which eliminates warnings for large values.
    172                 ret = new CastExpr( ret, new BasicType( Type::Qualifiers(), kind[Unsigned][size] ) );
    173         } else if ( size == 5 ) {                                                       // explicit cast to size_t
    174                 ret = new CastExpr( ret, new TypeInstType( Type::Qualifiers(), "size_t", false ) );
    175         } // if
    176148  CLEANUP:
    177149        if ( units.length() != 0 ) {
     
    275247} // build_constantStr
    276248
    277 Expression * build_field_name_FLOATING_FRACTIONconstant( const string & str ) {
    278         if ( str.find_first_not_of( "0123456789", 1 ) != string::npos ) throw SemanticError( "invalid tuple index " + str );
    279         Expression * ret = build_constantInteger( *new string( str.substr(1) ) );
    280         delete &str;
    281         return ret;
    282 } // build_field_name_FLOATING_FRACTIONconstant
    283 
    284 Expression * build_field_name_FLOATING_DECIMALconstant( const string & str ) {
    285         if ( str[str.size()-1] != '.' ) throw SemanticError( "invalid tuple index " + str );
    286         Expression * ret = build_constantInteger( *new string( str.substr( 0, str.size()-1 ) ) );
    287         delete &str;
    288         return ret;
    289 } // build_field_name_FLOATING_DECIMALconstant
    290 
    291249Expression * build_field_name_FLOATINGconstant( const string & str ) {
    292250        // str is of the form A.B -> separate at the . and return member expression
     
    315273        return make_field_name_fraction_constants( fieldName, maybeMoveBuild< Expression >( fracts ) );
    316274} // build_field_name_fraction_constants
     275
     276Expression * build_field_name_REALFRACTIONconstant( const string & str ) {
     277        if ( str.find_first_not_of( "0123456789", 1 ) != string::npos ) throw SemanticError( "invalid tuple index " + str );
     278        Expression * ret = build_constantInteger( *new string( str.substr(1) ) );
     279        delete &str;
     280        return ret;
     281} // build_field_name_REALFRACTIONconstant
     282
     283Expression * build_field_name_REALDECIMALconstant( const string & str ) {
     284        if ( str[str.size()-1] != '.' ) throw SemanticError( "invalid tuple index " + str );
     285        Expression * ret = build_constantInteger( *new string( str.substr( 0, str.size()-1 ) ) );
     286        delete &str;
     287        return ret;
     288} // build_field_name_REALDECIMALconstant
    317289
    318290NameExpr * build_varref( const string * name ) {
  • src/Parser/ParseNode.h

    rb2e2e34 r21a1efb  
    1010// Created On       : Sat May 16 13:28:16 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Sun Sep 10 09:56:32 2017
    13 // Update Count     : 801
     12// Last Modified On : Sun Sep  3 19:24:34 2017
     13// Update Count     : 799
    1414//
    1515
     
    166166Expression * build_constantChar( std::string &str );
    167167Expression * build_constantStr( std::string &str );
    168 Expression * build_field_name_FLOATING_FRACTIONconstant( const std::string & str );
    169 Expression * build_field_name_FLOATING_DECIMALconstant( const std::string & str );
    170168Expression * build_field_name_FLOATINGconstant( const std::string & str );
    171169Expression * build_field_name_fraction_constants( Expression * fieldName, ExpressionNode * fracts );
     170Expression * build_field_name_REALFRACTIONconstant( const std::string & str );
     171Expression * build_field_name_REALDECIMALconstant( const std::string & str );
    172172
    173173NameExpr * build_varref( const std::string * name );
  • src/Parser/lex.ll

    rb2e2e34 r21a1efb  
    1010 * Created On       : Sat Sep 22 08:58:10 2001
    1111 * Last Modified By : Peter A. Buhr
    12  * Last Modified On : Sun Sep 10 22:29:15 2017
    13  * Update Count     : 620
     12 * Last Modified On : Thu Aug 31 21:30:10 2017
     13 * Update Count     : 598
    1414 */
    1515
     
    9393                                // numeric constants, CFA: '_' in constant
    9494hex_quad {hex}("_"?{hex}){3}
    95 length ("ll"|"LL"|[lL])|("hh"|"HH"|[hH])
    96 integer_suffix_opt ("_"?(([uU]({length}?[iI]?)|([iI]{length}))|([iI]({length}?[uU]?)|([uU]{length}))|({length}([iI]?[uU]?)|([uU][iI]))|[zZ]))?{user_suffix_opt}
     95integer_suffix_opt ("_"?(([uU](("ll"|"LL"|[lL])[iI]|[iI]?("ll"|"LL"|[lL])?))|([iI](("ll"|"LL"|[lL])[uU]|[uU]?("ll"|"LL"|[lL])?))|(("ll"|"LL"|[lL])([iI][uU]|[uU]?[iI]?))))?
    9796
    9897octal_digits ({octal})|({octal}({octal}|"_")*{octal})
    9998octal_prefix "0""_"?
    100 octal_constant (("0")|({octal_prefix}{octal_digits})){integer_suffix_opt}
     99octal_constant (("0")|({octal_prefix}{octal_digits})){integer_suffix_opt}{user_suffix_opt}
    101100
    102101nonzero_digits ({nonzero})|({nonzero}({decimal}|"_")*{decimal})
    103 decimal_constant {nonzero_digits}{integer_suffix_opt}
     102decimal_constant {nonzero_digits}{integer_suffix_opt}{user_suffix_opt}
    104103
    105104hex_digits ({hex})|({hex}({hex}|"_")*{hex})
    106105hex_prefix "0"[xX]"_"?
    107 hex_constant {hex_prefix}{hex_digits}{integer_suffix_opt}
     106hex_constant {hex_prefix}{hex_digits}{integer_suffix_opt}{user_suffix_opt}
    108107
    109108                                // GCC: D (double) and iI (imaginary) suffixes, and DL (long double)
     109floating_suffix_opt ("_"?([fFdDlL][iI]?|[iI][lLfFdD]?|"DL"))?
     110decimal_digits ({decimal})|({decimal}({decimal}|"_")*{decimal})
     111real_decimal {decimal_digits}"."{exponent}?{floating_suffix_opt}{user_suffix_opt}
     112real_fraction "."{decimal_digits}{exponent}?{floating_suffix_opt}{user_suffix_opt}
     113real_constant {decimal_digits}{real_fraction}
    110114exponent "_"?[eE]"_"?[+-]?{decimal_digits}
    111 floating_suffix ([fFdDlL]?[iI]?)|([iI][lLfFdD])
    112 floating_suffix_opt ("_"?({floating_suffix}|"DL"))?{user_suffix_opt}
    113 decimal_digits ({decimal})|({decimal}({decimal}|"_")*{decimal})
    114 floating_decimal {decimal_digits}"."{exponent}?{floating_suffix_opt}
    115 floating_fraction "."{decimal_digits}{exponent}?{floating_suffix_opt}
    116 floating_constant ({decimal_digits}{exponent}{floating_suffix_opt})|({decimal_digits}{floating_fraction})
     115floating_constant (({real_constant}{exponent}?)|({decimal_digits}{exponent})){floating_suffix_opt}{user_suffix_opt}
    117116
    118117binary_exponent "_"?[pP]"_"?[+-]?{decimal_digits}
    119 hex_floating_suffix_opt ("_"?({floating_suffix}))?{user_suffix_opt}
    120 hex_floating_fraction ({hex_digits}?"."{hex_digits})|({hex_digits}".")
    121 hex_floating_constant {hex_prefix}(({hex_floating_fraction}{binary_exponent})|({hex_digits}{binary_exponent})){hex_floating_suffix_opt}
     118hex_fractional_constant ({hex_digits}?"."{hex_digits})|({hex_digits}".")
     119hex_floating_constant {hex_prefix}(({hex_fractional_constant}{binary_exponent})|({hex_digits}{binary_exponent})){floating_suffix_opt}
    122120
    123121                                // character escape sequence, GCC: \e => esc character
    124122simple_escape "\\"[abefnrtv'"?\\]
    125                                 // ' stop editor highlighting
     123                                // ' stop highlighting
    126124octal_escape "\\"{octal}("_"?{octal}){0,2}
    127125hex_escape "\\""x""_"?{hex_digits}
     
    156154                                /* line directives */
    157155^{h_white}*"#"{h_white}*[0-9]+{h_white}*["][^"\n]+["].*"\n" {
    158         /* " stop editor highlighting */
     156        /* " stop highlighting */
    159157        static char filename[FILENAME_MAX];                                     // temporarily store current source-file name
    160158        char *end_num;
     
    312310{octal_constant} { NUMERIC_RETURN(INTEGERconstant); }
    313311{hex_constant}  { NUMERIC_RETURN(INTEGERconstant); }
    314 {floating_decimal}      { NUMERIC_RETURN(FLOATING_DECIMALconstant); } // must appear before floating_constant
    315 {floating_fraction}     { NUMERIC_RETURN(FLOATING_FRACTIONconstant); } // must appear before floating_constant
     312{real_decimal}  { NUMERIC_RETURN(REALDECIMALconstant); } // must appear before floating_constant
     313{real_fraction} { NUMERIC_RETURN(REALFRACTIONconstant); } // must appear before floating_constant
    316314{floating_constant}     { NUMERIC_RETURN(FLOATINGconstant); }
    317315{hex_floating_constant} { NUMERIC_RETURN(FLOATINGconstant); }
     
    321319<QUOTE>[^'\\\n]* { strtext->append( yytext, yyleng ); }
    322320<QUOTE>['\n]{user_suffix_opt}   { BEGIN 0; strtext->append( yytext, yyleng ); RETURN_STR(CHARACTERconstant); }
    323                                 /* ' stop editor highlighting */
     321                                /* ' stop highlighting */
    324322
    325323                                /* string constant */
     
    327325<STRING>[^"\\\n]* { strtext->append( yytext, yyleng ); }
    328326<STRING>["\n]{user_suffix_opt}  { BEGIN 0; strtext->append( yytext, yyleng ); RETURN_STR(STRINGliteral); }
    329                                 /* " stop editor highlighting */
     327                                /* " stop highlighting */
    330328
    331329                                /* common character/string constant */
  • src/Parser/parser.yy

    rb2e2e34 r21a1efb  
    1010// Created On       : Sat Sep  1 20:22:55 2001
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Mon Sep 11 18:12:00 2017
    13 // Update Count     : 2787
     12// Last Modified On : Sun Sep  3 20:43:19 2017
     13// Update Count     : 2742
    1414//
    1515
     
    4343#define YYDEBUG_LEXER_TEXT (yylval)                                             // lexer loads this up each time
    4444#define YYDEBUG 1                                                                               // get the pretty debugging code to compile
    45 #define YYERROR_VERBOSE
    4645
    4746#undef __GNUC_MINOR__
     
    6362stack< LinkageSpec::Spec > linkageStack;
    6463
    65 bool appendStr( string & to, string & from ) {
    66         // 1. Multiple strings are concatenated into a single string but not combined internally. The reason is that
    67         //    "\x12" "3" is treated as 2 characters versus 1 because "escape sequences are converted into single members of
    68         //    the execution character set just prior to adjacent string literal concatenation" (C11, Section 6.4.5-8). It is
    69         //    easier to let the C compiler handle this case.
    70         //
    71         // 2. String encodings are transformed into canonical form (one encoding at start) so the encoding can be found
    72         //    without searching the string, e.g.: "abc" L"def" L"ghi" => L"abc" "def" "ghi". Multiple encodings must match,
    73         //    i.e., u"a" U"b" L"c" is disallowed.
    74 
    75         if ( from[0] != '"' ) {                                                         // encoding ?
    76                 if ( to[0] != '"' ) {                                                   // encoding ?
    77                         if ( to[0] != from[0] || to[1] != from[1] ) { // different encodings ?
    78                                 yyerror( "non-matching string encodings for string-literal concatenation" );
    79                                 return false;                                                   // parse error, must call YYERROR in action
    80                         } else if ( from[1] == '8' ) {
    81                                 from.erase( 0, 1 );                                             // remove 2nd encoding
    82                         } // if
    83                 } else {
    84                         if ( from[1] == '8' ) {                                         // move encoding to start
    85                                 to = "u8" + to;
    86                                 from.erase( 0, 1 );                                             // remove 2nd encoding
    87                         } else {
    88                                 to = from[0] + to;
    89                         } // if
    90                 } // if
    91                 from.erase( 0, 1 );                                                             // remove 2nd encoding
    92         } // if
    93         to += " " + from;                                                                       // concatenated into single string
    94         return true;
     64void appendStr( string *to, string *from ) {
     65        // "abc" "def" "ghi" => "abcdefghi", remove new text from quotes and insert before last quote in old string.
     66        to->insert( to->length() - 1, from->substr( 1, from->length() - 2 ) );
    9567} // appendStr
    9668
     
    11688bool forall = false;                                                                    // aggregate have one or more forall qualifiers ?
    11789%}
    118 
    119 %define parse.error verbose
    12090
    12191// Types declaration
     
    176146// overloading constants 0/1, e.g., x.1 is lexed as (x)(.1), where (.1) is a factional constant, but is semantically
    177147// converted into the tuple index (.)(1). e.g., 3.x
    178 %token<tok>     FLOATING_DECIMALconstant        FLOATING_FRACTIONconstant       FLOATINGconstant
     148%token<tok>     REALDECIMALconstant     REALFRACTIONconstant    FLOATINGconstant
    179149
    180150// multi-character operators
     
    345315%precedence ELSE        // token precedence for start of else clause in IF/WAITFOR statement
    346316
    347 
    348317%start translation_unit                                                                 // parse-tree root
    349318
     
    352321
    353322// The grammar in the ANSI C standard is not strictly context-free, since it relies upon the distinct terminal symbols
    354 // "identifier", "TYPEDEFname", and "TYPEGENname" that are lexically identical.  While it is possible to write a purely
    355 // context-free grammar, such a grammar would obscure the relationship between syntactic and semantic constructs.
    356 // Hence, this grammar uses the ANSI style.
     323// "identifier" and "TYPEDEFname" that are lexically identical.  While it is possible to write a purely context-free
     324// grammar, such a grammar would obscure the relationship between syntactic and semantic constructs.  Hence, this
     325// grammar uses the ANSI style.
    357326//
    358327// Cforall compounds this problem by introducing type names local to the scope of a declaration (for instance, those
     
    391360                // ENUMERATIONconstant is not included here; it is treated as a variable with type "enumeration constant".
    392361        INTEGERconstant                                                         { $$ = new ExpressionNode( build_constantInteger( *$1 ) ); }
    393         | FLOATING_DECIMALconstant                                      { $$ = new ExpressionNode( build_constantFloat( *$1 ) ); }
    394         | FLOATING_FRACTIONconstant                                     { $$ = new ExpressionNode( build_constantFloat( *$1 ) ); }
     362        | REALDECIMALconstant                                           { $$ = new ExpressionNode( build_constantFloat( *$1 ) ); }
     363        | REALFRACTIONconstant                                          { $$ = new ExpressionNode( build_constantFloat( *$1 ) ); }
    395364        | FLOATINGconstant                                                      { $$ = new ExpressionNode( build_constantFloat( *$1 ) ); }
    396365        | CHARACTERconstant                                                     { $$ = new ExpressionNode( build_constantChar( *$1 ) ); }
     
    421390        | string_literal_list STRINGliteral
    422391                {
    423                         if ( ! appendStr( *$1, *$2 ) ) YYERROR;         // append 2nd juxtaposed string to 1st
     392                        appendStr( $1, $2 );                                            // append 2nd juxtaposed string to 1st
    424393                        delete $2;                                                                      // allocated by lexer
    425394                        $$ = $1;                                                                        // conversion from tok to str
     
    465434        | postfix_expression '.' '[' push field_list pop ']' // CFA, tuple field selector
    466435                { $$ = new ExpressionNode( build_fieldSel( $1, build_tuple( $5 ) ) ); }
    467         | postfix_expression FLOATING_FRACTIONconstant          // CFA, tuple index
    468                 { $$ = new ExpressionNode( build_fieldSel( $1, build_field_name_FLOATING_FRACTIONconstant( *$2 ) ) ); }
     436        | postfix_expression REALFRACTIONconstant                       // CFA, tuple index
     437                { $$ = new ExpressionNode( build_fieldSel( $1, build_field_name_REALFRACTIONconstant( *$2 ) ) ); }
    469438        | postfix_expression ARROW no_attr_identifier
    470439                {
     
    510479field:                                                                                                  // CFA, tuple field selector
    511480        field_name
    512         | FLOATING_DECIMALconstant field
    513                 { $$ = new ExpressionNode( build_fieldSel( new ExpressionNode( build_field_name_FLOATING_DECIMALconstant( *$1 ) ), maybeMoveBuild<Expression>( $2 ) ) ); }
    514         | FLOATING_DECIMALconstant '[' push field_list pop ']'
    515                 { $$ = new ExpressionNode( build_fieldSel( new ExpressionNode( build_field_name_FLOATING_DECIMALconstant( *$1 ) ), build_tuple( $4 ) ) ); }
     481        | REALDECIMALconstant field
     482                { $$ = new ExpressionNode( build_fieldSel( new ExpressionNode( build_field_name_REALDECIMALconstant( *$1 ) ), maybeMoveBuild<Expression>( $2 ) ) ); }
     483        | REALDECIMALconstant '[' push field_list pop ']'
     484                { $$ = new ExpressionNode( build_fieldSel( new ExpressionNode( build_field_name_REALDECIMALconstant( *$1 ) ), build_tuple( $4 ) ) ); }
    516485        | field_name '.' field
    517486                { $$ = new ExpressionNode( build_fieldSel( $1, maybeMoveBuild<Expression>( $3 ) ) ); }
     
    538507        // empty
    539508                { $$ = nullptr; }
    540         | fraction_constants FLOATING_FRACTIONconstant
    541                 {
    542                         Expression * constant = build_field_name_FLOATING_FRACTIONconstant( *$2 );
     509        | fraction_constants REALFRACTIONconstant
     510                {
     511                        Expression * constant = build_field_name_REALFRACTIONconstant( *$2 );
    543512                        $$ = $1 != nullptr ? new ExpressionNode( build_fieldSel( $1,  constant ) ) : new ExpressionNode( constant );
    544513                }
  • src/SynTree/BasicType.cc

    rb2e2e34 r21a1efb  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Mon Sep 11 12:52:05 2017
    13 // Update Count     : 9
     12// Last Modified On : Wed Feb  1 17:12:15 2017
     13// Update Count     : 8
    1414//
    1515
     
    2525
    2626void BasicType::print( std::ostream &os, int indent ) const {
     27        static const char *kindNames[] = {     
     28                "_Bool", "char", "signed char", "unsigned char", "short signed int", "short unsigned int",
     29                "signed int", "unsigned int", "long signed int", "long unsigned int", "long long signed int",
     30                "long long unsigned int", "float", "double", "long double", "float _Complex", "double _Complex",
     31                "long double _Complex", "float _Imaginary", "double _Imaginary", "long double _Imaginary"
     32        };
     33
    2734        Type::print( os, indent );
    28         os << BasicType::typeNames[ kind ];
     35        os << kindNames[ kind ];
    2936}
    3037
  • src/SynTree/Type.cc

    rb2e2e34 r21a1efb  
    99// Author           : Richard C. Bilson
    1010// Created On       : Mon May 18 07:44:20 2015
    11 // Last Modified By : Peter A. Buhr
    12 // Last Modified On : Mon Sep 11 13:21:25 2017
    13 // Update Count     : 37
     11// Last Modified By : Andrew Beach
     12// Last Modified On : Wed Aug  2 11:11:00 2017
     13// Update Count     : 29
    1414//
    1515#include "Type.h"
     
    2626        "_Bool",
    2727        "char",
    28         "signed char",
     28        "char",
    2929        "unsigned char",
    30         "signed short int",
    31         "unsigned short int",
    32         "signed int",
     30        "short",
     31        "short unsigned",
     32        "int",
    3333        "unsigned int",
    34         "signed long int",
    35         "unsigned long int",
    36         "signed long long int",
    37         "unsigned long long int",
     34        "long int",
     35        "long unsigned int",
     36        "long long int",
     37        "long long unsigned int",
    3838        "float",
    3939        "double",
     
    6565
    6666Type * Type::stripDeclarator() {
    67         Type * type, * at;
    68         for ( type = this; (at = InitTweak::getPointerBase( type )); type = at );
     67        Type * type = this;
     68        while ( Type * at = InitTweak::getPointerBase( type ) ) {
     69                type = at;
     70        }
    6971        return type;
    7072}
    7173
    7274Type * Type::stripReferences() {
    73         Type * type;
    74         ReferenceType * ref;
    75         for ( type = this; (ref = dynamic_cast<ReferenceType *>( type )); type = ref->get_base() );
     75        Type * type = this;
     76        while ( ReferenceType * ref = dynamic_cast<ReferenceType *>( type ) ) {
     77                type = ref->get_base();
     78        }
    7679        return type;
    7780}
  • src/libcfa/iostream

    rb2e2e34 r21a1efb  
    1010// Created On       : Wed May 27 17:56:53 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Mon Sep 11 09:17:07 2017
    13 // Update Count     : 137
     12// Last Modified On : Thu Aug 24 08:14:29 2017
     13// Update Count     : 133
    1414//
    1515
    1616#pragma once
    1717
    18 #include <uchar.h>
    19 #include <wchar.h>
    2018#include "iterator"
    2119
     
    8078
    8179forall( dtype ostype | ostream( ostype ) ) ostype * ?|?( ostype *, const char * );
    82 forall( dtype ostype | ostream( ostype ) ) ostype * ?|?( ostype *, const char16_t * );
    83 forall( dtype ostype | ostream( ostype ) ) ostype * ?|?( ostype *, const char32_t * );
    84 forall( dtype ostype | ostream( ostype ) ) ostype * ?|?( ostype *, const wchar_t * );
    8580forall( dtype ostype | ostream( ostype ) ) ostype * ?|?( ostype *, const void * );
    8681
     
    123118
    124119forall( dtype istype | istream( istype ) ) istype * ?|?( istype *, char & );
    125 forall( dtype istype | istream( istype ) ) istype * ?|?( istype *, signed char & );
    126 forall( dtype istype | istream( istype ) ) istype * ?|?( istype *, unsigned char & );
    127120
    128121forall( dtype istype | istream( istype ) ) istype * ?|?( istype *, short int & );
  • src/libcfa/iostream.c

    rb2e2e34 r21a1efb  
    1010// Created On       : Wed May 27 17:56:53 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Mon Sep 11 09:21:24 2017
    13 // Update Count     : 420
     12// Last Modified On : Thu Aug 24 08:41:53 2017
     13// Update Count     : 405
    1414//
    1515
     
    145145
    146146forall( dtype ostype | ostream( ostype ) )
    147 ostype * ?|?( ostype * os, const char * str ) {
     147ostype * ?|?( ostype * os, const char * cp ) {
    148148        enum { Open = 1, Close, OpenClose };
    149149        static const unsigned char mask[256] @= {
     
    161161        }; // mask
    162162
    163   if ( str[0] == '\0' ) { sepOff( os ); return os; }            // null string => no separator
     163  if ( cp[0] == '\0' ) { sepOff( os ); return os; }             // null string => no separator
    164164
    165165        // first character IS NOT spacing or closing punctuation => add left separator
    166         unsigned char ch = str[0];                                                      // must make unsigned
     166        unsigned char ch = cp[0];                                                       // must make unsigned
    167167        if ( sepPrt( os ) && mask[ ch ] != Close && mask[ ch ] != OpenClose ) {
    168168                fmt( os, "%s", sepGetCur( os ) );
     
    173173
    174174        // last character IS spacing or opening punctuation => turn off separator for next item
    175         size_t len = strlen( str );
    176         ch = str[len - 1];                                                                      // must make unsigned
     175        size_t len = strlen( cp );
     176        ch = cp[len - 1];                                                                       // must make unsigned
    177177        if ( sepPrt( os ) && mask[ ch ] != Open && mask[ ch ] != OpenClose ) {
    178178                sepOn( os );
     
    181181        } // if
    182182        if ( ch == '\n' ) setNL( os, true );                            // check *AFTER* sepPrt call above as it resets NL flag
    183         return write( os, str, len );
    184 } // ?|?
    185 
    186 forall( dtype ostype | ostream( ostype ) )
    187 ostype * ?|?( ostype * os, const char16_t * str ) {
    188         if ( sepPrt( os ) ) fmt( os, "%s", sepGetCur( os ) );
    189         fmt( os, "%ls", str );
    190         return os;
    191 } // ?|?
    192 
    193 forall( dtype ostype | ostream( ostype ) )
    194 ostype * ?|?( ostype * os, const char32_t * str ) {
    195         if ( sepPrt( os ) ) fmt( os, "%s", sepGetCur( os ) );
    196         fmt( os, "%ls", str );
    197         return os;
    198 } // ?|?
    199 
    200 forall( dtype ostype | ostream( ostype ) )
    201 ostype * ?|?( ostype * os, const wchar_t * str ) {
    202         if ( sepPrt( os ) ) fmt( os, "%s", sepGetCur( os ) );
    203         fmt( os, "%ls", str );
    204         return os;
     183        return write( os, cp, len );
    205184} // ?|?
    206185
     
    298277
    299278forall( dtype istype | istream( istype ) )
    300 istype * ?|?( istype * is, signed char & sc ) {
    301         fmt( is, "%hhd", &sc );
    302         return is;
    303 } // ?|?
    304 
    305 forall( dtype istype | istream( istype ) )
    306 istype * ?|?( istype * is, unsigned char & usc ) {
    307         fmt( is, "%hhu", &usc );
    308         return is;
    309 } // ?|?
    310 
    311 forall( dtype istype | istream( istype ) )
    312279istype * ?|?( istype * is, short int & si ) {
    313280        fmt( is, "%hd", &si );
  • src/tests/.expect/64/KRfunctions.txt

    rb2e2e34 r21a1efb  
    1 __attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(unsigned long int __size);
     1__attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(long unsigned int __size);
    22__attribute__ ((__nothrow__,__leaf__)) extern void free(void *__ptr);
    33__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void abort(void);
    4 __attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern signed int atexit(void (*__func)(void));
    5 __attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(signed int __status);
    6 extern signed int printf(const char *__restrict __format, ...);
    7 signed int __f0__Fi_iPCii__1(signed int __a__i_1, const signed int *__b__PCi_1, signed int __c__i_1){
    8     __attribute__ ((unused)) signed int ___retval_f0__i_1;
     4__attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern int atexit(void (*__func)(void));
     5__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(int __status);
     6extern int printf(const char *__restrict __format, ...);
     7int __f0__Fi_iPCii__1(int __a__i_1, const int *__b__PCi_1, int __c__i_1){
     8    __attribute__ ((unused)) int ___retval_f0__i_1;
    99}
    10 signed int __f1__Fi_PiiPi__1(signed int *__a__Pi_1, __attribute__ ((unused)) signed int __b__i_1, signed int *__c__Pi_1){
    11     __attribute__ ((unused)) signed int ___retval_f1__i_1;
     10int __f1__Fi_PiiPi__1(int *__a__Pi_1, __attribute__ ((unused)) int __b__i_1, int *__c__Pi_1){
     11    __attribute__ ((unused)) int ___retval_f1__i_1;
    1212}
    13 signed int __f2__Fi_iPiPi__1(signed int __a__i_1, signed int *__b__Pi_1, signed int *__c__Pi_1){
    14     __attribute__ ((unused)) signed int ___retval_f2__i_1;
     13int __f2__Fi_iPiPi__1(int __a__i_1, int *__b__Pi_1, int *__c__Pi_1){
     14    __attribute__ ((unused)) int ___retval_f2__i_1;
    1515}
    1616struct S {
    17     signed int __i__i_1;
     17    int __i__i_1;
    1818};
    1919static inline void ___constructor__F_R2sS_autogen___1(struct S *___dst__R2sS_1);
     
    3636    return ((struct S )___ret__2sS_1);
    3737}
    38 static inline void ___constructor__F_R2sSi_autogen___1(struct S *___dst__R2sS_1, signed int __i__i_1){
     38static inline void ___constructor__F_R2sSi_autogen___1(struct S *___dst__R2sS_1, int __i__i_1){
    3939    ((void)((*___dst__R2sS_1).__i__i_1=__i__i_1) /* ?{} */);
    4040}
    41 signed int __f3__Fi_2sS2sSPi__1(struct S __a__2sS_1, struct S __b__2sS_1, signed int *__c__Pi_1){
    42     __attribute__ ((unused)) signed int ___retval_f3__i_1;
     41int __f3__Fi_2sS2sSPi__1(struct S __a__2sS_1, struct S __b__2sS_1, int *__c__Pi_1){
     42    __attribute__ ((unused)) int ___retval_f3__i_1;
    4343    struct S __s__2sS_2;
    4444}
    45 signed int __f4__Fi_iPiPi__1(signed int __a__i_1, signed int *__b__Pi_1, signed int *__c__Pi_1){
    46     __attribute__ ((unused)) signed int ___retval_f4__i_1;
     45int __f4__Fi_iPiPi__1(int __a__i_1, int *__b__Pi_1, int *__c__Pi_1){
     46    __attribute__ ((unused)) int ___retval_f4__i_1;
    4747}
    48 signed int __f5__Fi_iPiPi__1(signed int __a__i_1, signed int *__b__Pi_1, signed int *__c__Pi_1){
    49     __attribute__ ((unused)) signed int ___retval_f5__i_1;
     48int __f5__Fi_iPiPi__1(int __a__i_1, int *__b__Pi_1, int *__c__Pi_1){
     49    __attribute__ ((unused)) int ___retval_f5__i_1;
    5050}
    51 signed int (*__f6__FPFi_i__iPiPi__1(signed int __a__i_1, signed int *__b__Pi_1, signed int *__c__Pi_1))(signed int __anonymous_object0){
    52     __attribute__ ((unused)) signed int (*___retval_f6__PFi_i__1)(signed int __anonymous_object1);
     51int (*__f6__FPFi_i__iPiPi__1(int __a__i_1, int *__b__Pi_1, int *__c__Pi_1))(int __anonymous_object0){
     52    __attribute__ ((unused)) int (*___retval_f6__PFi_i__1)(int __anonymous_object1);
    5353}
    54 signed int (*__f7__FPFi_ii__iPiPi__1(signed int __a__i_1, signed int *__b__Pi_1, signed int *__c__Pi_1))(signed int __a__i_1, signed int __b__i_1){
    55     __attribute__ ((unused)) signed int (*___retval_f7__PFi_ii__1)(signed int __a__i_1, signed int __b__i_1);
     54int (*__f7__FPFi_ii__iPiPi__1(int __a__i_1, int *__b__Pi_1, int *__c__Pi_1))(int __a__i_1, int __b__i_1){
     55    __attribute__ ((unused)) int (*___retval_f7__PFi_ii__1)(int __a__i_1, int __b__i_1);
    5656}
    57 signed int *__f8__FPi_iPiPi__1(signed int __a__i_1, signed int *__b__Pi_1, signed int *__c__Pi_1){
    58     __attribute__ ((unused)) signed int *___retval_f8__Pi_1;
     57int *__f8__FPi_iPiPi__1(int __a__i_1, int *__b__Pi_1, int *__c__Pi_1){
     58    __attribute__ ((unused)) int *___retval_f8__Pi_1;
    5959}
    60 signed int *const __f9__FCPi_PiiPi__1(signed int *__a__Pi_1, signed int __b__i_1, signed int *__c__Pi_1){
    61     __attribute__ ((unused)) signed int *const ___retval_f9__CPi_1;
     60int *const __f9__FCPi_PiiPi__1(int *__a__Pi_1, int __b__i_1, int *__c__Pi_1){
     61    __attribute__ ((unused)) int *const ___retval_f9__CPi_1;
    6262}
    63 signed int *(*__f10__FPFPi_ii__iPiPid__1(signed int __a__i_1, signed int *__b__Pi_1, signed int *__c__Pi_1, double __y__d_1))(signed int __x__i_1, signed int __y__i_1){
    64     __attribute__ ((unused)) signed int *(*___retval_f10__PFPi_ii__1)(signed int __x__i_1, signed int __y__i_1);
    65     signed int *__x__FPi_ii__2(signed int __anonymous_object2, signed int __anonymous_object3);
     63int *(*__f10__FPFPi_ii__iPiPid__1(int __a__i_1, int *__b__Pi_1, int *__c__Pi_1, double __y__d_1))(int __x__i_1, int __y__i_1){
     64    __attribute__ ((unused)) int *(*___retval_f10__PFPi_ii__1)(int __x__i_1, int __y__i_1);
     65    int *__x__FPi_ii__2(int __anonymous_object2, int __anonymous_object3);
    6666    ((void)(___retval_f10__PFPi_ii__1=__x__FPi_ii__2) /* ?{} */);
    67     return ((signed int *(*)(signed int __x__i_1, signed int __y__i_1))___retval_f10__PFPi_ii__1);
     67    return ((int *(*)(int __x__i_1, int __y__i_1))___retval_f10__PFPi_ii__1);
    6868}
    69 signed int (*__f11__FPA0i_iPiPi__1(signed int __a__i_1, signed int *__b__Pi_1, signed int *__c__Pi_1))[]{
    70     __attribute__ ((unused)) signed int (*___retval_f11__PA0i_1)[];
     69int (*__f11__FPA0i_iPiPi__1(int __a__i_1, int *__b__Pi_1, int *__c__Pi_1))[]{
     70    __attribute__ ((unused)) int (*___retval_f11__PA0i_1)[];
    7171}
    72 signed int (*__f12__FPA0A0i_iPiPi__1(signed int __a__i_1, signed int *__b__Pi_1, signed int *__c__Pi_1))[][((unsigned long int )10)]{
    73     __attribute__ ((unused)) signed int (*___retval_f12__PA0A0i_1)[][((unsigned long int )10)];
     72int (*__f12__FPA0A0i_iPiPi__1(int __a__i_1, int *__b__Pi_1, int *__c__Pi_1))[][((long unsigned int )10)]{
     73    __attribute__ ((unused)) int (*___retval_f12__PA0A0i_1)[][((long unsigned int )10)];
    7474}
    75 signed int (*__f13__FPA0A0i_iPiPi__1(signed int __a__i_1, signed int *__b__Pi_1, signed int *__c__Pi_1))[][((unsigned long int )10)]{
    76     __attribute__ ((unused)) signed int (*___retval_f13__PA0A0i_1)[][((unsigned long int )10)];
     75int (*__f13__FPA0A0i_iPiPi__1(int __a__i_1, int *__b__Pi_1, int *__c__Pi_1))[][((long unsigned int )10)]{
     76    __attribute__ ((unused)) int (*___retval_f13__PA0A0i_1)[][((long unsigned int )10)];
    7777}
    78 signed int (*__f14__FPA0A0i_iPiPi__1(signed int __a__i_1, signed int *__b__Pi_1, signed int *__c__Pi_1))[][((unsigned long int )10)]{
    79     __attribute__ ((unused)) signed int (*___retval_f14__PA0A0i_1)[][((unsigned long int )10)];
     78int (*__f14__FPA0A0i_iPiPi__1(int __a__i_1, int *__b__Pi_1, int *__c__Pi_1))[][((long unsigned int )10)]{
     79    __attribute__ ((unused)) int (*___retval_f14__PA0A0i_1)[][((long unsigned int )10)];
    8080}
    81 signed int __f15__Fi_iii__1(signed int __a__i_1, signed int __b__i_1, signed int __c__i_1){
    82     __attribute__ ((unused)) signed int ___retval_f15__i_1;
     81int __f15__Fi_iii__1(int __a__i_1, int __b__i_1, int __c__i_1){
     82    __attribute__ ((unused)) int ___retval_f15__i_1;
    8383}
    84 const signed int __fred__FCi___1(){
    85     __attribute__ ((unused)) const signed int ___retval_fred__Ci_1;
    86     signed int *(*__x__PFPi_ii__2)(signed int __anonymous_object4, signed int __anonymous_object5);
    87     signed int __a__i_2;
    88     signed int __b__i_2;
    89     signed int *(*_tmp_cp_ret0)(signed int __x__i_1, signed int __y__i_1);
     84const int __fred__FCi___1(){
     85    __attribute__ ((unused)) const int ___retval_fred__Ci_1;
     86    int *(*__x__PFPi_ii__2)(int __anonymous_object4, int __anonymous_object5);
     87    int __a__i_2;
     88    int __b__i_2;
     89    int *(*_tmp_cp_ret0)(int __x__i_1, int __y__i_1);
    9090    ((void)(__x__PFPi_ii__2=(((void)(_tmp_cp_ret0=__f10__FPFPi_ii__iPiPid__1(3, (&__a__i_2), (&__b__i_2), 3.5))) , _tmp_cp_ret0)));
    9191    ((void)(_tmp_cp_ret0) /* ^?{} */);
    92     const signed int __f1__FCi_iPiPi__2(signed int __a__i_2, signed int *__b__Pi_2, signed int *__c__Pi_2){
    93         __attribute__ ((unused)) const signed int ___retval_f1__Ci_2;
     92    const int __f1__FCi_iPiPi__2(int __a__i_2, int *__b__Pi_2, int *__c__Pi_2){
     93        __attribute__ ((unused)) const int ___retval_f1__Ci_2;
    9494    }
    95     const signed int __f2__FCi_iii__2(signed int __a__i_2, signed int __b__i_2, signed int __c__i_2){
    96         __attribute__ ((unused)) const signed int ___retval_f2__Ci_2;
     95    const int __f2__FCi_iii__2(int __a__i_2, int __b__i_2, int __c__i_2){
     96        __attribute__ ((unused)) const int ___retval_f2__Ci_2;
    9797    }
    9898}
  • src/tests/.expect/64/attributes.txt

    rb2e2e34 r21a1efb  
    1 __attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(unsigned long int __size);
     1__attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(long unsigned int __size);
    22__attribute__ ((__nothrow__,__leaf__)) extern void free(void *__ptr);
    33__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void abort(void);
    4 __attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern signed int atexit(void (*__func)(void));
    5 __attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(signed int __status);
    6 extern signed int printf(const char *__restrict __format, ...);
    7 signed int __la__Fi___1(){
    8     __attribute__ ((unused)) signed int ___retval_la__i_1;
     4__attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern int atexit(void (*__func)(void));
     5__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(int __status);
     6extern int printf(const char *__restrict __format, ...);
     7int __la__Fi___1(){
     8    __attribute__ ((unused)) int ___retval_la__i_1;
    99    L: __attribute__ ((unused)) ((void)1);
    1010}
     
    5454__attribute__ ((unused)) struct __anonymous3;
    5555struct Fdl {
    56     __attribute__ ((unused)) signed int __f1__i_1;
    57     __attribute__ ((unused)) signed int __f2__i_1;
    58     __attribute__ ((unused,unused)) signed int __f3__i_1;
    59     __attribute__ ((unused)) signed int __f4__i_1;
    60     __attribute__ ((unused,unused)) signed int __f5__i_1;
    61     __attribute__ ((used,packed)) signed int __f6__i_1;
    62     __attribute__ ((used,unused,unused)) signed int __f7__i_1;
    63     __attribute__ ((used,used,unused)) signed int __f8__i_1;
    64     __attribute__ ((unused)) signed int __anonymous_object0;
    65     __attribute__ ((unused,unused)) signed int *__f9__Pi_1;
     56    __attribute__ ((unused)) int __f1__i_1;
     57    __attribute__ ((unused)) int __f2__i_1;
     58    __attribute__ ((unused,unused)) int __f3__i_1;
     59    __attribute__ ((unused)) int __f4__i_1;
     60    __attribute__ ((unused,unused)) int __f5__i_1;
     61    __attribute__ ((used,packed)) int __f6__i_1;
     62    __attribute__ ((used,unused,unused)) int __f7__i_1;
     63    __attribute__ ((used,used,unused)) int __f8__i_1;
     64    __attribute__ ((unused)) int __anonymous_object0;
     65    __attribute__ ((unused,unused)) int *__f9__Pi_1;
    6666};
    6767static inline void ___constructor__F_R4sFdl_autogen___1(struct Fdl *___dst__R4sFdl_1);
     
    116116    return ((struct Fdl )___ret__4sFdl_1);
    117117}
    118 static inline void ___constructor__F_R4sFdli_autogen___1(struct Fdl *___dst__R4sFdl_1, signed int __f1__i_1){
     118static inline void ___constructor__F_R4sFdli_autogen___1(struct Fdl *___dst__R4sFdl_1, int __f1__i_1){
    119119    ((void)((*___dst__R4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
    120120    ((void)((*___dst__R4sFdl_1).__f2__i_1) /* ?{} */);
     
    127127    ((void)((*___dst__R4sFdl_1).__f9__Pi_1) /* ?{} */);
    128128}
    129 static inline void ___constructor__F_R4sFdlii_autogen___1(struct Fdl *___dst__R4sFdl_1, signed int __f1__i_1, signed int __f2__i_1){
     129static inline void ___constructor__F_R4sFdlii_autogen___1(struct Fdl *___dst__R4sFdl_1, int __f1__i_1, int __f2__i_1){
    130130    ((void)((*___dst__R4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
    131131    ((void)((*___dst__R4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);
     
    138138    ((void)((*___dst__R4sFdl_1).__f9__Pi_1) /* ?{} */);
    139139}
    140 static inline void ___constructor__F_R4sFdliii_autogen___1(struct Fdl *___dst__R4sFdl_1, signed int __f1__i_1, signed int __f2__i_1, signed int __f3__i_1){
     140static inline void ___constructor__F_R4sFdliii_autogen___1(struct Fdl *___dst__R4sFdl_1, int __f1__i_1, int __f2__i_1, int __f3__i_1){
    141141    ((void)((*___dst__R4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
    142142    ((void)((*___dst__R4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);
     
    149149    ((void)((*___dst__R4sFdl_1).__f9__Pi_1) /* ?{} */);
    150150}
    151 static inline void ___constructor__F_R4sFdliiii_autogen___1(struct Fdl *___dst__R4sFdl_1, signed int __f1__i_1, signed int __f2__i_1, signed int __f3__i_1, signed int __f4__i_1){
    152     ((void)((*___dst__R4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
    153     ((void)((*___dst__R4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);
    154     ((void)((*___dst__R4sFdl_1).__f3__i_1=__f3__i_1) /* ?{} */);
    155     ((void)((*___dst__R4sFdl_1).__f4__i_1=__f4__i_1) /* ?{} */);
    156     ((void)((*___dst__R4sFdl_1).__f5__i_1) /* ?{} */);
    157     ((void)((*___dst__R4sFdl_1).__f6__i_1) /* ?{} */);
    158     ((void)((*___dst__R4sFdl_1).__f7__i_1) /* ?{} */);
    159     ((void)((*___dst__R4sFdl_1).__f8__i_1) /* ?{} */);
    160     ((void)((*___dst__R4sFdl_1).__f9__Pi_1) /* ?{} */);
    161 }
    162 static inline void ___constructor__F_R4sFdliiiii_autogen___1(struct Fdl *___dst__R4sFdl_1, signed int __f1__i_1, signed int __f2__i_1, signed int __f3__i_1, signed int __f4__i_1, signed int __f5__i_1){
    163     ((void)((*___dst__R4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
    164     ((void)((*___dst__R4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);
    165     ((void)((*___dst__R4sFdl_1).__f3__i_1=__f3__i_1) /* ?{} */);
    166     ((void)((*___dst__R4sFdl_1).__f4__i_1=__f4__i_1) /* ?{} */);
    167     ((void)((*___dst__R4sFdl_1).__f5__i_1=__f5__i_1) /* ?{} */);
    168     ((void)((*___dst__R4sFdl_1).__f6__i_1) /* ?{} */);
    169     ((void)((*___dst__R4sFdl_1).__f7__i_1) /* ?{} */);
    170     ((void)((*___dst__R4sFdl_1).__f8__i_1) /* ?{} */);
    171     ((void)((*___dst__R4sFdl_1).__f9__Pi_1) /* ?{} */);
    172 }
    173 static inline void ___constructor__F_R4sFdliiiiii_autogen___1(struct Fdl *___dst__R4sFdl_1, signed int __f1__i_1, signed int __f2__i_1, signed int __f3__i_1, signed int __f4__i_1, signed int __f5__i_1, signed int __f6__i_1){
     151static inline void ___constructor__F_R4sFdliiii_autogen___1(struct Fdl *___dst__R4sFdl_1, int __f1__i_1, int __f2__i_1, int __f3__i_1, int __f4__i_1){
     152    ((void)((*___dst__R4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
     153    ((void)((*___dst__R4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);
     154    ((void)((*___dst__R4sFdl_1).__f3__i_1=__f3__i_1) /* ?{} */);
     155    ((void)((*___dst__R4sFdl_1).__f4__i_1=__f4__i_1) /* ?{} */);
     156    ((void)((*___dst__R4sFdl_1).__f5__i_1) /* ?{} */);
     157    ((void)((*___dst__R4sFdl_1).__f6__i_1) /* ?{} */);
     158    ((void)((*___dst__R4sFdl_1).__f7__i_1) /* ?{} */);
     159    ((void)((*___dst__R4sFdl_1).__f8__i_1) /* ?{} */);
     160    ((void)((*___dst__R4sFdl_1).__f9__Pi_1) /* ?{} */);
     161}
     162static inline void ___constructor__F_R4sFdliiiii_autogen___1(struct Fdl *___dst__R4sFdl_1, int __f1__i_1, int __f2__i_1, int __f3__i_1, int __f4__i_1, int __f5__i_1){
     163    ((void)((*___dst__R4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
     164    ((void)((*___dst__R4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);
     165    ((void)((*___dst__R4sFdl_1).__f3__i_1=__f3__i_1) /* ?{} */);
     166    ((void)((*___dst__R4sFdl_1).__f4__i_1=__f4__i_1) /* ?{} */);
     167    ((void)((*___dst__R4sFdl_1).__f5__i_1=__f5__i_1) /* ?{} */);
     168    ((void)((*___dst__R4sFdl_1).__f6__i_1) /* ?{} */);
     169    ((void)((*___dst__R4sFdl_1).__f7__i_1) /* ?{} */);
     170    ((void)((*___dst__R4sFdl_1).__f8__i_1) /* ?{} */);
     171    ((void)((*___dst__R4sFdl_1).__f9__Pi_1) /* ?{} */);
     172}
     173static inline void ___constructor__F_R4sFdliiiiii_autogen___1(struct Fdl *___dst__R4sFdl_1, int __f1__i_1, int __f2__i_1, int __f3__i_1, int __f4__i_1, int __f5__i_1, int __f6__i_1){
    174174    ((void)((*___dst__R4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
    175175    ((void)((*___dst__R4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);
     
    182182    ((void)((*___dst__R4sFdl_1).__f9__Pi_1) /* ?{} */);
    183183}
    184 static inline void ___constructor__F_R4sFdliiiiiii_autogen___1(struct Fdl *___dst__R4sFdl_1, signed int __f1__i_1, signed int __f2__i_1, signed int __f3__i_1, signed int __f4__i_1, signed int __f5__i_1, signed int __f6__i_1, signed int __f7__i_1){
     184static inline void ___constructor__F_R4sFdliiiiiii_autogen___1(struct Fdl *___dst__R4sFdl_1, int __f1__i_1, int __f2__i_1, int __f3__i_1, int __f4__i_1, int __f5__i_1, int __f6__i_1, int __f7__i_1){
    185185    ((void)((*___dst__R4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
    186186    ((void)((*___dst__R4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);
     
    193193    ((void)((*___dst__R4sFdl_1).__f9__Pi_1) /* ?{} */);
    194194}
    195 static inline void ___constructor__F_R4sFdliiiiiiii_autogen___1(struct Fdl *___dst__R4sFdl_1, signed int __f1__i_1, signed int __f2__i_1, signed int __f3__i_1, signed int __f4__i_1, signed int __f5__i_1, signed int __f6__i_1, signed int __f7__i_1, signed int __f8__i_1){
     195static inline void ___constructor__F_R4sFdliiiiiiii_autogen___1(struct Fdl *___dst__R4sFdl_1, int __f1__i_1, int __f2__i_1, int __f3__i_1, int __f4__i_1, int __f5__i_1, int __f6__i_1, int __f7__i_1, int __f8__i_1){
    196196    ((void)((*___dst__R4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
    197197    ((void)((*___dst__R4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);
     
    204204    ((void)((*___dst__R4sFdl_1).__f9__Pi_1) /* ?{} */);
    205205}
    206 static inline void ___constructor__F_R4sFdliiiiiiiiPi_autogen___1(struct Fdl *___dst__R4sFdl_1, signed int __f1__i_1, signed int __f2__i_1, signed int __f3__i_1, signed int __f4__i_1, signed int __f5__i_1, signed int __f6__i_1, signed int __f7__i_1, signed int __f8__i_1, signed int *__f9__Pi_1){
     206static inline void ___constructor__F_R4sFdliiiiiiiiPi_autogen___1(struct Fdl *___dst__R4sFdl_1, int __f1__i_1, int __f2__i_1, int __f3__i_1, int __f4__i_1, int __f5__i_1, int __f6__i_1, int __f7__i_1, int __f8__i_1, int *__f9__Pi_1){
    207207    ((void)((*___dst__R4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
    208208    ((void)((*___dst__R4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);
     
    215215    ((void)((*___dst__R4sFdl_1).__f9__Pi_1=__f9__Pi_1) /* ?{} */);
    216216}
    217 __attribute__ ((unused)) signed int __f__Fi___1() asm ( "xyz" );
    218 __attribute__ ((used,used)) const signed int __vd1__Ci_1;
    219 __attribute__ ((used,unused)) const signed int __vd2__Ci_1;
    220 __attribute__ ((used,used,used,used)) const signed int *__vd3__PCi_1;
    221 __attribute__ ((used,used,unused,used,unused)) const signed int *__vd4__PCi_1;
    222 __attribute__ ((used,used,used)) const signed int __vd5__A0Ci_1[((unsigned long int )5)];
    223 __attribute__ ((used,used,unused,used)) const signed int __vd6__A0Ci_1[((unsigned long int )5)];
    224 __attribute__ ((used,used,used,used)) const signed int (*__vd7__PFCi___1)();
    225 __attribute__ ((used,used,unused,used,used)) const signed int (*__vd8__PFCi___1)();
    226 __attribute__ ((unused,used)) signed int __f1__Fi___1();
    227 __attribute__ ((unused)) signed int __f1__Fi___1(){
    228     __attribute__ ((unused)) signed int ___retval_f1__i_1;
    229 }
    230 __attribute__ ((unused,unused,unused,used)) signed int **const __f2__FCPPi___1();
    231 __attribute__ ((unused,unused,unused)) signed int **const __f2__FCPPi___1(){
    232     __attribute__ ((unused)) signed int **const ___retval_f2__CPPi_1;
    233 }
    234 __attribute__ ((unused,used,unused)) signed int (*__f3__FPA0i_i__1(signed int __anonymous_object1))[];
    235 __attribute__ ((unused,unused)) signed int (*__f3__FPA0i_i__1(signed int __p__i_1))[]{
    236     __attribute__ ((unused)) signed int (*___retval_f3__PA0i_1)[];
    237 }
    238 __attribute__ ((unused,used,unused)) signed int (*__f4__FPFi_i____1())(signed int __anonymous_object2);
    239 __attribute__ ((unused,unused)) signed int (*__f4__FPFi_i____1())(signed int __anonymous_object3){
    240     __attribute__ ((unused)) signed int (*___retval_f4__PFi_i__1)(signed int __anonymous_object4);
    241 }
    242 signed int __vtr__Fi___1(){
    243     __attribute__ ((unused)) signed int ___retval_vtr__i_1;
    244     __attribute__ ((unused,unused,used)) signed int __t1__i_2;
    245     __attribute__ ((unused,unused,unused,unused,unused)) signed int **__t2__PPi_2;
    246     __attribute__ ((unused,unused,unused)) signed int __t3__A0i_2[((unsigned long int )5)];
    247     __attribute__ ((unused,unused,unused,unused,unused)) signed int **__t4__A0PPi_2[((unsigned long int )5)];
    248     __attribute__ ((unused,unused,unused)) signed int __t5__Fi___2();
    249     __attribute__ ((unused,unused,unused,unused)) signed int *__t6__FPi___2();
    250 }
    251 signed int __ipd1__Fi_ii__1(__attribute__ ((unused,unused,unused)) signed int __p__i_1, __attribute__ ((unused,unused,unused)) signed int __q__i_1);
    252 signed int __ipd1__Fi_ii__1(__attribute__ ((unused,unused,unused)) signed int __p__i_1, __attribute__ ((unused,unused,unused)) signed int __q__i_1){
    253     __attribute__ ((unused)) signed int ___retval_ipd1__i_1;
    254 }
    255 signed int __ipd2__Fi_PiPi__1(__attribute__ ((unused,unused,unused,unused)) signed int *__p__Pi_1, __attribute__ ((unused,unused,unused)) signed int *__q__Pi_1);
    256 signed int __ipd2__Fi_PiPi__1(__attribute__ ((unused,unused,unused,unused)) signed int *__p__Pi_1, __attribute__ ((unused,unused,unused)) signed int *__q__Pi_1){
    257     __attribute__ ((unused)) signed int ___retval_ipd2__i_1;
    258 }
    259 signed int __ipd3__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__p__Pi_1, __attribute__ ((unused,unused,unused)) signed int *__q__Pi_1);
    260 signed int __ipd3__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__p__Pi_1, __attribute__ ((unused,unused,unused)) signed int *__q__Pi_1){
    261     __attribute__ ((unused)) signed int ___retval_ipd3__i_1;
    262 }
    263 signed int __ipd4__Fi_PFi__PFi____1(__attribute__ ((unused,unused,unused)) signed int (*__p__PFi___1)(), __attribute__ ((unused,unused,unused)) signed int (*__q__PFi___1)());
    264 signed int __ipd4__Fi_PFi__PFi____1(__attribute__ ((unused,unused,unused)) signed int (*__p__PFi___1)(), __attribute__ ((unused,unused,unused)) signed int (*__q__PFi___1)()){
    265     __attribute__ ((unused)) signed int ___retval_ipd4__i_1;
    266 }
    267 signed int __tpr1__Fi_i__1(__attribute__ ((unused,unused,unused)) signed int __Foo__i_1);
    268 signed int __tpr2__Fi_PPi__1(__attribute__ ((unused,unused,unused,unused,unused,unused)) signed int **__Foo__PPi_1);
    269 signed int __tpr3__Fi_Pi__1(__attribute__ ((unused,unused,unused)) signed int *__Foo__Pi_1);
    270 signed int __tpr4__Fi_PFi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object5)(__attribute__ ((unused,unused)) signed int __anonymous_object6[((unsigned long int )5)]));
    271 signed int __tpr5__Fi_PFi____1(__attribute__ ((unused,unused,unused)) signed int (*__Foo__PFi___1)());
    272 signed int __tpr6__Fi_PFi____1(__attribute__ ((unused,unused,unused)) signed int (*__Foo__PFi___1)());
    273 signed int __tpr7__Fi_PFi_PFi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object7)(__attribute__ ((unused)) signed int (*__anonymous_object8)(__attribute__ ((unused,unused)) signed int __anonymous_object9)));
    274 signed int __ad__Fi___1(){
    275     __attribute__ ((unused)) signed int ___retval_ad__i_1;
    276     __attribute__ ((used,unused)) signed int __ad1__i_2;
    277     __attribute__ ((unused,unused,unused)) signed int *__ad2__Pi_2;
    278     __attribute__ ((unused,unused,unused)) signed int __ad3__A0i_2[((unsigned long int )5)];
    279     __attribute__ ((unused,unused,unused,unused,unused)) signed int (*__ad4__PA0i_2)[((unsigned long int )10)];
    280     __attribute__ ((unused,unused,unused,unused,used)) signed int __ad5__i_2;
    281     __attribute__ ((unused,unused,unused,unused,unused)) signed int __ad6__Fi___2();
    282     ((void)sizeof(__attribute__ ((unused,unused)) signed int ));
    283     ((void)sizeof(__attribute__ ((unused,unused,unused,unused)) signed int **));
    284     ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int [5]));
    285     ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int (*)[10]));
    286     ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int ()));
     217__attribute__ ((unused)) int __f__Fi___1() asm ( "xyz" );
     218__attribute__ ((used,used)) const int __vd1__Ci_1;
     219__attribute__ ((used,unused)) const int __vd2__Ci_1;
     220__attribute__ ((used,used,used,used)) const int *__vd3__PCi_1;
     221__attribute__ ((used,used,unused,used,unused)) const int *__vd4__PCi_1;
     222__attribute__ ((used,used,used)) const int __vd5__A0Ci_1[((long unsigned int )5)];
     223__attribute__ ((used,used,unused,used)) const int __vd6__A0Ci_1[((long unsigned int )5)];
     224__attribute__ ((used,used,used,used)) const int (*__vd7__PFCi___1)();
     225__attribute__ ((used,used,unused,used,used)) const int (*__vd8__PFCi___1)();
     226__attribute__ ((unused,used)) int __f1__Fi___1();
     227__attribute__ ((unused)) int __f1__Fi___1(){
     228    __attribute__ ((unused)) int ___retval_f1__i_1;
     229}
     230__attribute__ ((unused,unused,unused,used)) int **const __f2__FCPPi___1();
     231__attribute__ ((unused,unused,unused)) int **const __f2__FCPPi___1(){
     232    __attribute__ ((unused)) int **const ___retval_f2__CPPi_1;
     233}
     234__attribute__ ((unused,used,unused)) int (*__f3__FPA0i_i__1(int __anonymous_object1))[];
     235__attribute__ ((unused,unused)) int (*__f3__FPA0i_i__1(int __p__i_1))[]{
     236    __attribute__ ((unused)) int (*___retval_f3__PA0i_1)[];
     237}
     238__attribute__ ((unused,used,unused)) int (*__f4__FPFi_i____1())(int __anonymous_object2);
     239__attribute__ ((unused,unused)) int (*__f4__FPFi_i____1())(int __anonymous_object3){
     240    __attribute__ ((unused)) int (*___retval_f4__PFi_i__1)(int __anonymous_object4);
     241}
     242int __vtr__Fi___1(){
     243    __attribute__ ((unused)) int ___retval_vtr__i_1;
     244    __attribute__ ((unused,unused,used)) int __t1__i_2;
     245    __attribute__ ((unused,unused,unused,unused,unused)) int **__t2__PPi_2;
     246    __attribute__ ((unused,unused,unused)) int __t3__A0i_2[((long unsigned int )5)];
     247    __attribute__ ((unused,unused,unused,unused,unused)) int **__t4__A0PPi_2[((long unsigned int )5)];
     248    __attribute__ ((unused,unused,unused)) int __t5__Fi___2();
     249    __attribute__ ((unused,unused,unused,unused)) int *__t6__FPi___2();
     250}
     251int __ipd1__Fi_ii__1(__attribute__ ((unused,unused,unused)) int __p__i_1, __attribute__ ((unused,unused,unused)) int __q__i_1);
     252int __ipd1__Fi_ii__1(__attribute__ ((unused,unused,unused)) int __p__i_1, __attribute__ ((unused,unused,unused)) int __q__i_1){
     253    __attribute__ ((unused)) int ___retval_ipd1__i_1;
     254}
     255int __ipd2__Fi_PiPi__1(__attribute__ ((unused,unused,unused,unused)) int *__p__Pi_1, __attribute__ ((unused,unused,unused)) int *__q__Pi_1);
     256int __ipd2__Fi_PiPi__1(__attribute__ ((unused,unused,unused,unused)) int *__p__Pi_1, __attribute__ ((unused,unused,unused)) int *__q__Pi_1){
     257    __attribute__ ((unused)) int ___retval_ipd2__i_1;
     258}
     259int __ipd3__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) int *__p__Pi_1, __attribute__ ((unused,unused,unused)) int *__q__Pi_1);
     260int __ipd3__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) int *__p__Pi_1, __attribute__ ((unused,unused,unused)) int *__q__Pi_1){
     261    __attribute__ ((unused)) int ___retval_ipd3__i_1;
     262}
     263int __ipd4__Fi_PFi__PFi____1(__attribute__ ((unused,unused,unused)) int (*__p__PFi___1)(), __attribute__ ((unused,unused,unused)) int (*__q__PFi___1)());
     264int __ipd4__Fi_PFi__PFi____1(__attribute__ ((unused,unused,unused)) int (*__p__PFi___1)(), __attribute__ ((unused,unused,unused)) int (*__q__PFi___1)()){
     265    __attribute__ ((unused)) int ___retval_ipd4__i_1;
     266}
     267int __tpr1__Fi_i__1(__attribute__ ((unused,unused,unused)) int __Foo__i_1);
     268int __tpr2__Fi_PPi__1(__attribute__ ((unused,unused,unused,unused,unused,unused)) int **__Foo__PPi_1);
     269int __tpr3__Fi_Pi__1(__attribute__ ((unused,unused,unused)) int *__Foo__Pi_1);
     270int __tpr4__Fi_PFi_Pi___1(__attribute__ ((unused,unused)) int (*__anonymous_object5)(__attribute__ ((unused,unused)) int __anonymous_object6[((long unsigned int )5)]));
     271int __tpr5__Fi_PFi____1(__attribute__ ((unused,unused,unused)) int (*__Foo__PFi___1)());
     272int __tpr6__Fi_PFi____1(__attribute__ ((unused,unused,unused)) int (*__Foo__PFi___1)());
     273int __tpr7__Fi_PFi_PFi_i____1(__attribute__ ((unused,unused)) int (*__anonymous_object7)(__attribute__ ((unused)) int (*__anonymous_object8)(__attribute__ ((unused,unused)) int __anonymous_object9)));
     274int __ad__Fi___1(){
     275    __attribute__ ((unused)) int ___retval_ad__i_1;
     276    __attribute__ ((used,unused)) int __ad1__i_2;
     277    __attribute__ ((unused,unused,unused)) int *__ad2__Pi_2;
     278    __attribute__ ((unused,unused,unused)) int __ad3__A0i_2[((long unsigned int )5)];
     279    __attribute__ ((unused,unused,unused,unused,unused)) int (*__ad4__PA0i_2)[((long unsigned int )10)];
     280    __attribute__ ((unused,unused,unused,unused,used)) int __ad5__i_2;
     281    __attribute__ ((unused,unused,unused,unused,unused)) int __ad6__Fi___2();
     282    ((void)sizeof(__attribute__ ((unused,unused)) int ));
     283    ((void)sizeof(__attribute__ ((unused,unused,unused,unused)) int **));
     284    ((void)sizeof(__attribute__ ((unused,unused,unused)) int [5]));
     285    ((void)sizeof(__attribute__ ((unused,unused,unused)) int (*)[10]));
     286    ((void)sizeof(__attribute__ ((unused,unused,unused)) int ()));
    287287    __attribute__ ((unused)) struct __anonymous4 {
    288         signed int __i__i_2;
     288        int __i__i_2;
    289289    };
    290290    inline void ___constructor__F_R13s__anonymous4_autogen___2(struct __anonymous4 *___dst__R13s__anonymous4_2){
     
    303303        return ((struct __anonymous4 )___ret__13s__anonymous4_2);
    304304    }
    305     inline void ___constructor__F_R13s__anonymous4i_autogen___2(struct __anonymous4 *___dst__R13s__anonymous4_2, signed int __i__i_2){
     305    inline void ___constructor__F_R13s__anonymous4i_autogen___2(struct __anonymous4 *___dst__R13s__anonymous4_2, int __i__i_2){
    306306        ((void)((*___dst__R13s__anonymous4_2).__i__i_2=__i__i_2) /* ?{} */);
    307307    }
     
    324324    ((void)sizeof(enum __anonymous5 ));
    325325}
    326 signed int __apd1__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object10, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object11);
    327 signed int __apd2__Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object12, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object13);
    328 signed int __apd3__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object14, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object15);
    329 signed int __apd4__Fi_PFi__PFi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object16)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object17)());
    330 signed int __apd5__Fi_PFi_i_PFi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object18)(__attribute__ ((unused)) signed int __anonymous_object19), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object20)(__attribute__ ((unused)) signed int __anonymous_object21));
    331 signed int __apd6__Fi_PFi__PFi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object22)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object23)());
    332 signed int __apd7__Fi_PFi_i_PFi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object24)(__attribute__ ((unused)) signed int __anonymous_object25), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object26)(__attribute__ ((unused)) signed int __anonymous_object27));
     326int __apd1__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) int *__anonymous_object10, __attribute__ ((unused,unused,unused)) int *__anonymous_object11);
     327int __apd2__Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) int **__anonymous_object12, __attribute__ ((unused,unused,unused,unused)) int **__anonymous_object13);
     328int __apd3__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) int *__anonymous_object14, __attribute__ ((unused,unused,unused)) int *__anonymous_object15);
     329int __apd4__Fi_PFi__PFi____1(__attribute__ ((unused,unused,unused)) int (*__anonymous_object16)(), __attribute__ ((unused,unused,unused)) int (*__anonymous_object17)());
     330int __apd5__Fi_PFi_i_PFi_i___1(__attribute__ ((unused,unused,unused)) int (*__anonymous_object18)(__attribute__ ((unused)) int __anonymous_object19), __attribute__ ((unused,unused,unused)) int (*__anonymous_object20)(__attribute__ ((unused)) int __anonymous_object21));
     331int __apd6__Fi_PFi__PFi____1(__attribute__ ((unused,unused,unused)) int (*__anonymous_object22)(), __attribute__ ((unused,unused,unused)) int (*__anonymous_object23)());
     332int __apd7__Fi_PFi_i_PFi_i___1(__attribute__ ((unused,unused,unused)) int (*__anonymous_object24)(__attribute__ ((unused)) int __anonymous_object25), __attribute__ ((unused,unused,unused)) int (*__anonymous_object26)(__attribute__ ((unused)) int __anonymous_object27));
    333333struct Vad {
    334     __attribute__ ((unused)) signed int __anonymous_object28;
    335     __attribute__ ((unused,unused)) signed int *__anonymous_object29;
    336     __attribute__ ((unused,unused)) signed int __anonymous_object30[((unsigned long int )10)];
    337     __attribute__ ((unused,unused)) signed int (*__anonymous_object31)();
     334    __attribute__ ((unused)) int __anonymous_object28;
     335    __attribute__ ((unused,unused)) int *__anonymous_object29;
     336    __attribute__ ((unused,unused)) int __anonymous_object30[((long unsigned int )10)];
     337    __attribute__ ((unused,unused)) int (*__anonymous_object31)();
    338338};
    339339static inline void ___constructor__F_R4sVad_autogen___1(struct Vad *___dst__R4sVad_1);
  • src/tests/.expect/64/declarationSpecifier.txt

    rb2e2e34 r21a1efb  
    1 __attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(unsigned long int __size);
     1__attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(long unsigned int __size);
    22__attribute__ ((__nothrow__,__leaf__)) extern void free(void *__ptr);
    33__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void abort(void);
    4 __attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern signed int atexit(void (*__func)(void));
    5 __attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(signed int __status);
    6 extern signed int printf(const char *__restrict __format, ...);
    7 volatile const signed short int __x1__CVs_1;
    8 static volatile const signed short int __x2__CVs_1;
    9 static volatile const signed short int __x3__CVs_1;
    10 static volatile const signed short int __x4__CVs_1;
    11 static volatile const signed short int __x5__CVs_1;
    12 static volatile const signed short int __x6__CVs_1;
    13 static volatile const signed short int __x7__CVs_1;
    14 static volatile const signed short int __x8__CVs_1;
     4__attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern int atexit(void (*__func)(void));
     5__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(int __status);
     6extern int printf(const char *__restrict __format, ...);
     7volatile const short __x1__CVs_1;
     8static volatile const short __x2__CVs_1;
     9static volatile const short __x3__CVs_1;
     10static volatile const short __x4__CVs_1;
     11static volatile const short __x5__CVs_1;
     12static volatile const short __x6__CVs_1;
     13static volatile const short __x7__CVs_1;
     14static volatile const short __x8__CVs_1;
    1515struct __anonymous0 {
    16     signed int __i__i_1;
     16    int __i__i_1;
    1717};
    1818static inline void ___constructor__F_R13s__anonymous0_autogen___1(struct __anonymous0 *___dst__R13s__anonymous0_1);
     
    3535    return ((struct __anonymous0 )___ret__13s__anonymous0_1);
    3636}
    37 static inline void ___constructor__F_R13s__anonymous0i_autogen___1(struct __anonymous0 *___dst__R13s__anonymous0_1, signed int __i__i_1){
     37static inline void ___constructor__F_R13s__anonymous0i_autogen___1(struct __anonymous0 *___dst__R13s__anonymous0_1, int __i__i_1){
    3838    ((void)((*___dst__R13s__anonymous0_1).__i__i_1=__i__i_1) /* ?{} */);
    3939}
    4040volatile const struct __anonymous0 __x10__CV13s__anonymous0_1;
    4141struct __anonymous1 {
    42     signed int __i__i_1;
     42    int __i__i_1;
    4343};
    4444static inline void ___constructor__F_R13s__anonymous1_autogen___1(struct __anonymous1 *___dst__R13s__anonymous1_1);
     
    6161    return ((struct __anonymous1 )___ret__13s__anonymous1_1);
    6262}
    63 static inline void ___constructor__F_R13s__anonymous1i_autogen___1(struct __anonymous1 *___dst__R13s__anonymous1_1, signed int __i__i_1){
     63static inline void ___constructor__F_R13s__anonymous1i_autogen___1(struct __anonymous1 *___dst__R13s__anonymous1_1, int __i__i_1){
    6464    ((void)((*___dst__R13s__anonymous1_1).__i__i_1=__i__i_1) /* ?{} */);
    6565}
    6666volatile const struct __anonymous1 __x11__CV13s__anonymous1_1;
    6767struct __anonymous2 {
    68     signed int __i__i_1;
     68    int __i__i_1;
    6969};
    7070static inline void ___constructor__F_R13s__anonymous2_autogen___1(struct __anonymous2 *___dst__R13s__anonymous2_1);
     
    8787    return ((struct __anonymous2 )___ret__13s__anonymous2_1);
    8888}
    89 static inline void ___constructor__F_R13s__anonymous2i_autogen___1(struct __anonymous2 *___dst__R13s__anonymous2_1, signed int __i__i_1){
     89static inline void ___constructor__F_R13s__anonymous2i_autogen___1(struct __anonymous2 *___dst__R13s__anonymous2_1, int __i__i_1){
    9090    ((void)((*___dst__R13s__anonymous2_1).__i__i_1=__i__i_1) /* ?{} */);
    9191}
    9292volatile const struct __anonymous2 __x12__CV13s__anonymous2_1;
    9393struct __anonymous3 {
    94     signed int __i__i_1;
     94    int __i__i_1;
    9595};
    9696static inline void ___constructor__F_R13s__anonymous3_autogen___1(struct __anonymous3 *___dst__R13s__anonymous3_1);
     
    113113    return ((struct __anonymous3 )___ret__13s__anonymous3_1);
    114114}
    115 static inline void ___constructor__F_R13s__anonymous3i_autogen___1(struct __anonymous3 *___dst__R13s__anonymous3_1, signed int __i__i_1){
     115static inline void ___constructor__F_R13s__anonymous3i_autogen___1(struct __anonymous3 *___dst__R13s__anonymous3_1, int __i__i_1){
    116116    ((void)((*___dst__R13s__anonymous3_1).__i__i_1=__i__i_1) /* ?{} */);
    117117}
    118118static volatile const struct __anonymous3 __x13__CV13s__anonymous3_1;
    119119struct __anonymous4 {
    120     signed int __i__i_1;
     120    int __i__i_1;
    121121};
    122122static inline void ___constructor__F_R13s__anonymous4_autogen___1(struct __anonymous4 *___dst__R13s__anonymous4_1);
     
    139139    return ((struct __anonymous4 )___ret__13s__anonymous4_1);
    140140}
    141 static inline void ___constructor__F_R13s__anonymous4i_autogen___1(struct __anonymous4 *___dst__R13s__anonymous4_1, signed int __i__i_1){
     141static inline void ___constructor__F_R13s__anonymous4i_autogen___1(struct __anonymous4 *___dst__R13s__anonymous4_1, int __i__i_1){
    142142    ((void)((*___dst__R13s__anonymous4_1).__i__i_1=__i__i_1) /* ?{} */);
    143143}
    144144static volatile const struct __anonymous4 __x14__CV13s__anonymous4_1;
    145145struct __anonymous5 {
    146     signed int __i__i_1;
     146    int __i__i_1;
    147147};
    148148static inline void ___constructor__F_R13s__anonymous5_autogen___1(struct __anonymous5 *___dst__R13s__anonymous5_1);
     
    165165    return ((struct __anonymous5 )___ret__13s__anonymous5_1);
    166166}
    167 static inline void ___constructor__F_R13s__anonymous5i_autogen___1(struct __anonymous5 *___dst__R13s__anonymous5_1, signed int __i__i_1){
     167static inline void ___constructor__F_R13s__anonymous5i_autogen___1(struct __anonymous5 *___dst__R13s__anonymous5_1, int __i__i_1){
    168168    ((void)((*___dst__R13s__anonymous5_1).__i__i_1=__i__i_1) /* ?{} */);
    169169}
    170170static volatile const struct __anonymous5 __x15__CV13s__anonymous5_1;
    171171struct __anonymous6 {
    172     signed int __i__i_1;
     172    int __i__i_1;
    173173};
    174174static inline void ___constructor__F_R13s__anonymous6_autogen___1(struct __anonymous6 *___dst__R13s__anonymous6_1);
     
    191191    return ((struct __anonymous6 )___ret__13s__anonymous6_1);
    192192}
    193 static inline void ___constructor__F_R13s__anonymous6i_autogen___1(struct __anonymous6 *___dst__R13s__anonymous6_1, signed int __i__i_1){
     193static inline void ___constructor__F_R13s__anonymous6i_autogen___1(struct __anonymous6 *___dst__R13s__anonymous6_1, int __i__i_1){
    194194    ((void)((*___dst__R13s__anonymous6_1).__i__i_1=__i__i_1) /* ?{} */);
    195195}
    196196static volatile const struct __anonymous6 __x16__CV13s__anonymous6_1;
    197197struct __anonymous7 {
    198     signed int __i__i_1;
     198    int __i__i_1;
    199199};
    200200static inline void ___constructor__F_R13s__anonymous7_autogen___1(struct __anonymous7 *___dst__R13s__anonymous7_1);
     
    217217    return ((struct __anonymous7 )___ret__13s__anonymous7_1);
    218218}
    219 static inline void ___constructor__F_R13s__anonymous7i_autogen___1(struct __anonymous7 *___dst__R13s__anonymous7_1, signed int __i__i_1){
     219static inline void ___constructor__F_R13s__anonymous7i_autogen___1(struct __anonymous7 *___dst__R13s__anonymous7_1, int __i__i_1){
    220220    ((void)((*___dst__R13s__anonymous7_1).__i__i_1=__i__i_1) /* ?{} */);
    221221}
    222222static volatile const struct __anonymous7 __x17__CV13s__anonymous7_1;
    223 volatile const signed short int __x20__CVs_1;
    224 static volatile const signed short int __x21__CVs_1;
    225 static volatile const signed short int __x22__CVs_1;
    226 static volatile const signed short int __x23__CVs_1;
    227 static volatile const signed short int __x24__CVs_1;
    228 static volatile const signed short int __x25__CVs_1;
    229 static volatile const signed short int __x26__CVs_1;
    230 static volatile const signed short int __x27__CVs_1;
     223volatile const short __x20__CVs_1;
     224static volatile const short __x21__CVs_1;
     225static volatile const short __x22__CVs_1;
     226static volatile const short __x23__CVs_1;
     227static volatile const short __x24__CVs_1;
     228static volatile const short __x25__CVs_1;
     229static volatile const short __x26__CVs_1;
     230static volatile const short __x27__CVs_1;
    231231struct __anonymous8 {
    232     signed short int __i__s_1;
     232    short __i__s_1;
    233233};
    234234static inline void ___constructor__F_R13s__anonymous8_autogen___1(struct __anonymous8 *___dst__R13s__anonymous8_1);
     
    251251    return ((struct __anonymous8 )___ret__13s__anonymous8_1);
    252252}
    253 static inline void ___constructor__F_R13s__anonymous8s_autogen___1(struct __anonymous8 *___dst__R13s__anonymous8_1, signed short int __i__s_1){
     253static inline void ___constructor__F_R13s__anonymous8s_autogen___1(struct __anonymous8 *___dst__R13s__anonymous8_1, short __i__s_1){
    254254    ((void)((*___dst__R13s__anonymous8_1).__i__s_1=__i__s_1) /* ?{} */);
    255255}
    256256volatile const struct __anonymous8 __x29__CV13s__anonymous8_1;
    257257struct __anonymous9 {
    258     signed short int __i__s_1;
     258    short __i__s_1;
    259259};
    260260static inline void ___constructor__F_R13s__anonymous9_autogen___1(struct __anonymous9 *___dst__R13s__anonymous9_1);
     
    277277    return ((struct __anonymous9 )___ret__13s__anonymous9_1);
    278278}
    279 static inline void ___constructor__F_R13s__anonymous9s_autogen___1(struct __anonymous9 *___dst__R13s__anonymous9_1, signed short int __i__s_1){
     279static inline void ___constructor__F_R13s__anonymous9s_autogen___1(struct __anonymous9 *___dst__R13s__anonymous9_1, short __i__s_1){
    280280    ((void)((*___dst__R13s__anonymous9_1).__i__s_1=__i__s_1) /* ?{} */);
    281281}
    282282volatile const struct __anonymous9 __x30__CV13s__anonymous9_1;
    283283struct __anonymous10 {
    284     signed short int __i__s_1;
     284    short __i__s_1;
    285285};
    286286static inline void ___constructor__F_R14s__anonymous10_autogen___1(struct __anonymous10 *___dst__R14s__anonymous10_1);
     
    303303    return ((struct __anonymous10 )___ret__14s__anonymous10_1);
    304304}
    305 static inline void ___constructor__F_R14s__anonymous10s_autogen___1(struct __anonymous10 *___dst__R14s__anonymous10_1, signed short int __i__s_1){
     305static inline void ___constructor__F_R14s__anonymous10s_autogen___1(struct __anonymous10 *___dst__R14s__anonymous10_1, short __i__s_1){
    306306    ((void)((*___dst__R14s__anonymous10_1).__i__s_1=__i__s_1) /* ?{} */);
    307307}
    308308volatile const struct __anonymous10 __x31__CV14s__anonymous10_1;
    309309struct __anonymous11 {
    310     signed short int __i__s_1;
     310    short __i__s_1;
    311311};
    312312static inline void ___constructor__F_R14s__anonymous11_autogen___1(struct __anonymous11 *___dst__R14s__anonymous11_1);
     
    329329    return ((struct __anonymous11 )___ret__14s__anonymous11_1);
    330330}
    331 static inline void ___constructor__F_R14s__anonymous11s_autogen___1(struct __anonymous11 *___dst__R14s__anonymous11_1, signed short int __i__s_1){
     331static inline void ___constructor__F_R14s__anonymous11s_autogen___1(struct __anonymous11 *___dst__R14s__anonymous11_1, short __i__s_1){
    332332    ((void)((*___dst__R14s__anonymous11_1).__i__s_1=__i__s_1) /* ?{} */);
    333333}
    334334static volatile const struct __anonymous11 __x32__CV14s__anonymous11_1;
    335335struct __anonymous12 {
    336     signed short int __i__s_1;
     336    short __i__s_1;
    337337};
    338338static inline void ___constructor__F_R14s__anonymous12_autogen___1(struct __anonymous12 *___dst__R14s__anonymous12_1);
     
    355355    return ((struct __anonymous12 )___ret__14s__anonymous12_1);
    356356}
    357 static inline void ___constructor__F_R14s__anonymous12s_autogen___1(struct __anonymous12 *___dst__R14s__anonymous12_1, signed short int __i__s_1){
     357static inline void ___constructor__F_R14s__anonymous12s_autogen___1(struct __anonymous12 *___dst__R14s__anonymous12_1, short __i__s_1){
    358358    ((void)((*___dst__R14s__anonymous12_1).__i__s_1=__i__s_1) /* ?{} */);
    359359}
    360360static volatile const struct __anonymous12 __x33__CV14s__anonymous12_1;
    361361struct __anonymous13 {
    362     signed short int __i__s_1;
     362    short __i__s_1;
    363363};
    364364static inline void ___constructor__F_R14s__anonymous13_autogen___1(struct __anonymous13 *___dst__R14s__anonymous13_1);
     
    381381    return ((struct __anonymous13 )___ret__14s__anonymous13_1);
    382382}
    383 static inline void ___constructor__F_R14s__anonymous13s_autogen___1(struct __anonymous13 *___dst__R14s__anonymous13_1, signed short int __i__s_1){
     383static inline void ___constructor__F_R14s__anonymous13s_autogen___1(struct __anonymous13 *___dst__R14s__anonymous13_1, short __i__s_1){
    384384    ((void)((*___dst__R14s__anonymous13_1).__i__s_1=__i__s_1) /* ?{} */);
    385385}
    386386static volatile const struct __anonymous13 __x34__CV14s__anonymous13_1;
    387387struct __anonymous14 {
    388     signed short int __i__s_1;
     388    short __i__s_1;
    389389};
    390390static inline void ___constructor__F_R14s__anonymous14_autogen___1(struct __anonymous14 *___dst__R14s__anonymous14_1);
     
    407407    return ((struct __anonymous14 )___ret__14s__anonymous14_1);
    408408}
    409 static inline void ___constructor__F_R14s__anonymous14s_autogen___1(struct __anonymous14 *___dst__R14s__anonymous14_1, signed short int __i__s_1){
     409static inline void ___constructor__F_R14s__anonymous14s_autogen___1(struct __anonymous14 *___dst__R14s__anonymous14_1, short __i__s_1){
    410410    ((void)((*___dst__R14s__anonymous14_1).__i__s_1=__i__s_1) /* ?{} */);
    411411}
    412412static volatile const struct __anonymous14 __x35__CV14s__anonymous14_1;
    413413struct __anonymous15 {
    414     signed short int __i__s_1;
     414    short __i__s_1;
    415415};
    416416static inline void ___constructor__F_R14s__anonymous15_autogen___1(struct __anonymous15 *___dst__R14s__anonymous15_1);
     
    433433    return ((struct __anonymous15 )___ret__14s__anonymous15_1);
    434434}
    435 static inline void ___constructor__F_R14s__anonymous15s_autogen___1(struct __anonymous15 *___dst__R14s__anonymous15_1, signed short int __i__s_1){
     435static inline void ___constructor__F_R14s__anonymous15s_autogen___1(struct __anonymous15 *___dst__R14s__anonymous15_1, short __i__s_1){
    436436    ((void)((*___dst__R14s__anonymous15_1).__i__s_1=__i__s_1) /* ?{} */);
    437437}
    438438static volatile const struct __anonymous15 __x36__CV14s__anonymous15_1;
    439 static inline volatile const signed int __f11__FCVi___1();
    440 static inline volatile const signed int __f12__FCVi___1();
    441 static inline volatile const signed int __f13__FCVi___1();
    442 static inline volatile const signed int __f14__FCVi___1();
    443 static inline volatile const signed int __f15__FCVi___1();
    444 static inline volatile const signed int __f16__FCVi___1();
    445 static inline volatile const signed int __f17__FCVi___1();
    446 static inline volatile const signed int __f18__FCVi___1();
    447 static inline volatile const signed short int __f21__FCVs___1();
    448 static inline volatile const signed short int __f22__FCVs___1();
    449 static inline volatile const signed short int __f23__FCVs___1();
    450 static inline volatile const signed short int __f24__FCVs___1();
    451 static inline volatile const signed short int __f25__FCVs___1();
    452 static inline volatile const signed short int __f26__FCVs___1();
    453 static inline volatile const signed short int __f27__FCVs___1();
    454 static inline volatile const signed short int __f28__FCVs___1();
     439static inline volatile const int __f11__FCVi___1();
     440static inline volatile const int __f12__FCVi___1();
     441static inline volatile const int __f13__FCVi___1();
     442static inline volatile const int __f14__FCVi___1();
     443static inline volatile const int __f15__FCVi___1();
     444static inline volatile const int __f16__FCVi___1();
     445static inline volatile const int __f17__FCVi___1();
     446static inline volatile const int __f18__FCVi___1();
     447static inline volatile const short __f21__FCVs___1();
     448static inline volatile const short __f22__FCVs___1();
     449static inline volatile const short __f23__FCVs___1();
     450static inline volatile const short __f24__FCVs___1();
     451static inline volatile const short __f25__FCVs___1();
     452static inline volatile const short __f26__FCVs___1();
     453static inline volatile const short __f27__FCVs___1();
     454static inline volatile const short __f28__FCVs___1();
    455455struct __anonymous16 {
    456     signed int __i__i_1;
     456    int __i__i_1;
    457457};
    458458static inline void ___constructor__F_R14s__anonymous16_autogen___1(struct __anonymous16 *___dst__R14s__anonymous16_1);
     
    475475    return ((struct __anonymous16 )___ret__14s__anonymous16_1);
    476476}
    477 static inline void ___constructor__F_R14s__anonymous16i_autogen___1(struct __anonymous16 *___dst__R14s__anonymous16_1, signed int __i__i_1){
     477static inline void ___constructor__F_R14s__anonymous16i_autogen___1(struct __anonymous16 *___dst__R14s__anonymous16_1, int __i__i_1){
    478478    ((void)((*___dst__R14s__anonymous16_1).__i__i_1=__i__i_1) /* ?{} */);
    479479}
    480480static inline volatile const struct __anonymous16 __f31__FCV14s__anonymous16___1();
    481481struct __anonymous17 {
    482     signed int __i__i_1;
     482    int __i__i_1;
    483483};
    484484static inline void ___constructor__F_R14s__anonymous17_autogen___1(struct __anonymous17 *___dst__R14s__anonymous17_1);
     
    501501    return ((struct __anonymous17 )___ret__14s__anonymous17_1);
    502502}
    503 static inline void ___constructor__F_R14s__anonymous17i_autogen___1(struct __anonymous17 *___dst__R14s__anonymous17_1, signed int __i__i_1){
     503static inline void ___constructor__F_R14s__anonymous17i_autogen___1(struct __anonymous17 *___dst__R14s__anonymous17_1, int __i__i_1){
    504504    ((void)((*___dst__R14s__anonymous17_1).__i__i_1=__i__i_1) /* ?{} */);
    505505}
    506506static inline volatile const struct __anonymous17 __f32__FCV14s__anonymous17___1();
    507507struct __anonymous18 {
    508     signed int __i__i_1;
     508    int __i__i_1;
    509509};
    510510static inline void ___constructor__F_R14s__anonymous18_autogen___1(struct __anonymous18 *___dst__R14s__anonymous18_1);
     
    527527    return ((struct __anonymous18 )___ret__14s__anonymous18_1);
    528528}
    529 static inline void ___constructor__F_R14s__anonymous18i_autogen___1(struct __anonymous18 *___dst__R14s__anonymous18_1, signed int __i__i_1){
     529static inline void ___constructor__F_R14s__anonymous18i_autogen___1(struct __anonymous18 *___dst__R14s__anonymous18_1, int __i__i_1){
    530530    ((void)((*___dst__R14s__anonymous18_1).__i__i_1=__i__i_1) /* ?{} */);
    531531}
    532532static inline volatile const struct __anonymous18 __f33__FCV14s__anonymous18___1();
    533533struct __anonymous19 {
    534     signed int __i__i_1;
     534    int __i__i_1;
    535535};
    536536static inline void ___constructor__F_R14s__anonymous19_autogen___1(struct __anonymous19 *___dst__R14s__anonymous19_1);
     
    553553    return ((struct __anonymous19 )___ret__14s__anonymous19_1);
    554554}
    555 static inline void ___constructor__F_R14s__anonymous19i_autogen___1(struct __anonymous19 *___dst__R14s__anonymous19_1, signed int __i__i_1){
     555static inline void ___constructor__F_R14s__anonymous19i_autogen___1(struct __anonymous19 *___dst__R14s__anonymous19_1, int __i__i_1){
    556556    ((void)((*___dst__R14s__anonymous19_1).__i__i_1=__i__i_1) /* ?{} */);
    557557}
    558558static inline volatile const struct __anonymous19 __f34__FCV14s__anonymous19___1();
    559559struct __anonymous20 {
    560     signed int __i__i_1;
     560    int __i__i_1;
    561561};
    562562static inline void ___constructor__F_R14s__anonymous20_autogen___1(struct __anonymous20 *___dst__R14s__anonymous20_1);
     
    579579    return ((struct __anonymous20 )___ret__14s__anonymous20_1);
    580580}
    581 static inline void ___constructor__F_R14s__anonymous20i_autogen___1(struct __anonymous20 *___dst__R14s__anonymous20_1, signed int __i__i_1){
     581static inline void ___constructor__F_R14s__anonymous20i_autogen___1(struct __anonymous20 *___dst__R14s__anonymous20_1, int __i__i_1){
    582582    ((void)((*___dst__R14s__anonymous20_1).__i__i_1=__i__i_1) /* ?{} */);
    583583}
    584584static inline volatile const struct __anonymous20 __f35__FCV14s__anonymous20___1();
    585585struct __anonymous21 {
    586     signed int __i__i_1;
     586    int __i__i_1;
    587587};
    588588static inline void ___constructor__F_R14s__anonymous21_autogen___1(struct __anonymous21 *___dst__R14s__anonymous21_1);
     
    605605    return ((struct __anonymous21 )___ret__14s__anonymous21_1);
    606606}
    607 static inline void ___constructor__F_R14s__anonymous21i_autogen___1(struct __anonymous21 *___dst__R14s__anonymous21_1, signed int __i__i_1){
     607static inline void ___constructor__F_R14s__anonymous21i_autogen___1(struct __anonymous21 *___dst__R14s__anonymous21_1, int __i__i_1){
    608608    ((void)((*___dst__R14s__anonymous21_1).__i__i_1=__i__i_1) /* ?{} */);
    609609}
    610610static inline volatile const struct __anonymous21 __f36__FCV14s__anonymous21___1();
    611611struct __anonymous22 {
    612     signed int __i__i_1;
     612    int __i__i_1;
    613613};
    614614static inline void ___constructor__F_R14s__anonymous22_autogen___1(struct __anonymous22 *___dst__R14s__anonymous22_1);
     
    631631    return ((struct __anonymous22 )___ret__14s__anonymous22_1);
    632632}
    633 static inline void ___constructor__F_R14s__anonymous22i_autogen___1(struct __anonymous22 *___dst__R14s__anonymous22_1, signed int __i__i_1){
     633static inline void ___constructor__F_R14s__anonymous22i_autogen___1(struct __anonymous22 *___dst__R14s__anonymous22_1, int __i__i_1){
    634634    ((void)((*___dst__R14s__anonymous22_1).__i__i_1=__i__i_1) /* ?{} */);
    635635}
    636636static inline volatile const struct __anonymous22 __f37__FCV14s__anonymous22___1();
    637637struct __anonymous23 {
    638     signed int __i__i_1;
     638    int __i__i_1;
    639639};
    640640static inline void ___constructor__F_R14s__anonymous23_autogen___1(struct __anonymous23 *___dst__R14s__anonymous23_1);
     
    657657    return ((struct __anonymous23 )___ret__14s__anonymous23_1);
    658658}
    659 static inline void ___constructor__F_R14s__anonymous23i_autogen___1(struct __anonymous23 *___dst__R14s__anonymous23_1, signed int __i__i_1){
     659static inline void ___constructor__F_R14s__anonymous23i_autogen___1(struct __anonymous23 *___dst__R14s__anonymous23_1, int __i__i_1){
    660660    ((void)((*___dst__R14s__anonymous23_1).__i__i_1=__i__i_1) /* ?{} */);
    661661}
    662662static inline volatile const struct __anonymous23 __f38__FCV14s__anonymous23___1();
    663 static inline volatile const signed short int __f41__FCVs___1();
    664 static inline volatile const signed short int __f42__FCVs___1();
    665 static inline volatile const signed short int __f43__FCVs___1();
    666 static inline volatile const signed short int __f44__FCVs___1();
    667 static inline volatile const signed short int __f45__FCVs___1();
    668 static inline volatile const signed short int __f46__FCVs___1();
    669 static inline volatile const signed short int __f47__FCVs___1();
    670 static inline volatile const signed short int __f48__FCVs___1();
    671 signed int __main__Fi_iPPCc__1(signed int __argc__i_1, const char **__argv__PPCc_1){
    672     __attribute__ ((unused)) signed int ___retval_main__i_1;
    673     ((void)(___retval_main__i_1=((signed int )0)) /* ?{} */);
    674     return ((signed int )___retval_main__i_1);
     663static inline volatile const short __f41__FCVs___1();
     664static inline volatile const short __f42__FCVs___1();
     665static inline volatile const short __f43__FCVs___1();
     666static inline volatile const short __f44__FCVs___1();
     667static inline volatile const short __f45__FCVs___1();
     668static inline volatile const short __f46__FCVs___1();
     669static inline volatile const short __f47__FCVs___1();
     670static inline volatile const short __f48__FCVs___1();
     671int __main__Fi_iPPCc__1(int __argc__i_1, const char **__argv__PPCc_1){
     672    __attribute__ ((unused)) int ___retval_main__i_1;
     673    ((void)(___retval_main__i_1=((int )0)) /* ?{} */);
     674    return ((int )___retval_main__i_1);
    675675    ((void)(___retval_main__i_1=0) /* ?{} */);
    676     return ((signed int )___retval_main__i_1);
     676    return ((int )___retval_main__i_1);
    677677}
    678678static inline int invoke_main(int argc, char* argv[], char* envp[]) { (void)argc; (void)argv; (void)envp; return __main__Fi_iPPCc__1(argc, argv); }
    679 __attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(unsigned long int __size);
     679__attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(long unsigned int __size);
    680680__attribute__ ((__nothrow__,__leaf__)) extern void free(void *__ptr);
    681681__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void abort(void);
    682 __attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern signed int atexit(void (*__func)(void));
    683 __attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(signed int __status);
    684 extern signed int printf(const char *__restrict __format, ...);
    685 static inline signed int invoke_main(signed int argc, char **argv, char **envp);
    686 signed int main(signed int __argc__i_1, char **__argv__PPc_1, char **__envp__PPc_1){
    687     __attribute__ ((unused)) signed int ___retval_main__i_1;
    688     signed int _tmp_cp_ret0;
     682__attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern int atexit(void (*__func)(void));
     683__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(int __status);
     684extern int printf(const char *__restrict __format, ...);
     685static inline int invoke_main(int argc, char **argv, char **envp);
     686int main(int __argc__i_1, char **__argv__PPc_1, char **__envp__PPc_1){
     687    __attribute__ ((unused)) int ___retval_main__i_1;
     688    int _tmp_cp_ret0;
    689689    ((void)(___retval_main__i_1=(((void)(_tmp_cp_ret0=invoke_main(__argc__i_1, __argv__PPc_1, __envp__PPc_1))) , _tmp_cp_ret0)) /* ?{} */);
    690690    ((void)(_tmp_cp_ret0) /* ^?{} */);
    691     return ((signed int )___retval_main__i_1);
    692 }
     691    return ((int )___retval_main__i_1);
     692}
  • src/tests/.expect/64/extension.txt

    rb2e2e34 r21a1efb  
    1 __attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(unsigned long int __size);
     1__attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(long unsigned int __size);
    22__attribute__ ((__nothrow__,__leaf__)) extern void free(void *__ptr);
    33__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void abort(void);
    4 __attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern signed int atexit(void (*__func)(void));
    5 __attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(signed int __status);
    6 extern signed int printf(const char *__restrict __format, ...);
    7 __extension__ signed int __a__i_1;
    8 __extension__ signed int __b__i_1;
    9 __extension__ signed int __c__i_1;
     4__attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern int atexit(void (*__func)(void));
     5__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(int __status);
     6extern int printf(const char *__restrict __format, ...);
     7__extension__ int __a__i_1;
     8__extension__ int __b__i_1;
     9__extension__ int __c__i_1;
    1010__extension__ struct S {
    11     __extension__ signed int __a__i_1;
    12     __extension__ signed int __b__i_1;
    13     __extension__ signed int __c__i_1;
     11    __extension__ int __a__i_1;
     12    __extension__ int __b__i_1;
     13    __extension__ int __c__i_1;
    1414};
    1515static inline void ___constructor__F_R2sS_autogen___1(struct S *___dst__R2sS_1);
     
    4040    return ((struct S )___ret__2sS_1);
    4141}
    42 static inline void ___constructor__F_R2sSi_autogen___1(struct S *___dst__R2sS_1, signed int __a__i_1){
     42static inline void ___constructor__F_R2sSi_autogen___1(struct S *___dst__R2sS_1, int __a__i_1){
    4343    ((void)((*___dst__R2sS_1).__a__i_1=__a__i_1) /* ?{} */);
    4444    ((void)((*___dst__R2sS_1).__b__i_1) /* ?{} */);
    4545    ((void)((*___dst__R2sS_1).__c__i_1) /* ?{} */);
    4646}
    47 static inline void ___constructor__F_R2sSii_autogen___1(struct S *___dst__R2sS_1, signed int __a__i_1, signed int __b__i_1){
     47static inline void ___constructor__F_R2sSii_autogen___1(struct S *___dst__R2sS_1, int __a__i_1, int __b__i_1){
    4848    ((void)((*___dst__R2sS_1).__a__i_1=__a__i_1) /* ?{} */);
    4949    ((void)((*___dst__R2sS_1).__b__i_1=__b__i_1) /* ?{} */);
    5050    ((void)((*___dst__R2sS_1).__c__i_1) /* ?{} */);
    5151}
    52 static inline void ___constructor__F_R2sSiii_autogen___1(struct S *___dst__R2sS_1, signed int __a__i_1, signed int __b__i_1, signed int __c__i_1){
     52static inline void ___constructor__F_R2sSiii_autogen___1(struct S *___dst__R2sS_1, int __a__i_1, int __b__i_1, int __c__i_1){
    5353    ((void)((*___dst__R2sS_1).__a__i_1=__a__i_1) /* ?{} */);
    5454    ((void)((*___dst__R2sS_1).__b__i_1=__b__i_1) /* ?{} */);
     
    5656}
    5757__extension__ union U {
    58     __extension__ signed int __a__i_1;
    59     __extension__ signed int __b__i_1;
    60     __extension__ signed int __c__i_1;
     58    __extension__ int __a__i_1;
     59    __extension__ int __b__i_1;
     60    __extension__ int __c__i_1;
    6161};
    6262static inline void ___constructor__F_R2uU_autogen___1(__attribute__ ((unused)) union U *___dst__R2uU_1){
     
    7373    return ((union U )___ret__2uU_1);
    7474}
    75 static inline void ___constructor__F_R2uUi_autogen___1(__attribute__ ((unused)) union U *___dst__R2uU_1, signed int __src__i_1){
    76     ((void)__builtin_memcpy(((void *)___dst__R2uU_1), ((const void *)(&__src__i_1)), sizeof(signed int )));
     75static inline void ___constructor__F_R2uUi_autogen___1(__attribute__ ((unused)) union U *___dst__R2uU_1, int __src__i_1){
     76    ((void)__builtin_memcpy(((void *)___dst__R2uU_1), ((const void *)(&__src__i_1)), sizeof(int )));
    7777}
    7878__extension__ enum E {
     
    8181    __B__C2eE_1,
    8282};
    83 __extension__ signed int __f__Fi___1();
    84 __extension__ signed int i;
    85 __extension__ signed int j;
    86 __extension__ signed int __fred__Fi_i__1(signed int __p__i_1){
    87     __attribute__ ((unused)) signed int ___retval_fred__i_1;
     83__extension__ int __f__Fi___1();
     84__extension__ int i;
     85__extension__ int j;
     86__extension__ int __fred__Fi_i__1(int __p__i_1){
     87    __attribute__ ((unused)) int ___retval_fred__i_1;
    8888    __extension__ struct S {
    89         __extension__ signed int __a__i_2;
    90         __extension__ signed int __b__i_2;
    91         __extension__ signed int __c__i_2;
    92         __extension__ signed int *__x__Pi_2;
    93         __extension__ signed int *__y__Pi_2;
    94         __extension__ signed int *__z__Pi_2;
     89        __extension__ int __a__i_2;
     90        __extension__ int __b__i_2;
     91        __extension__ int __c__i_2;
     92        __extension__ int *__x__Pi_2;
     93        __extension__ int *__y__Pi_2;
     94        __extension__ int *__z__Pi_2;
    9595    };
    96     signed int __i__i_2 = ((signed int )(__extension__ __a__i_1+__extension__ 3));
     96    int __i__i_2 = ((int )(__extension__ __a__i_1+__extension__ 3));
    9797    ((void)__extension__ 3);
    9898    ((void)__extension__ __a__i_1);
    99     __extension__ signed int __a__i_2;
    100     __extension__ signed int __b__i_2;
    101     __extension__ signed int __c__i_2;
     99    __extension__ int __a__i_2;
     100    __extension__ int __b__i_2;
     101    __extension__ int __c__i_2;
    102102    ((void)(__extension__ __a__i_2=(__extension__ __b__i_2+__extension__ __c__i_2)));
    103     signed int _tmp_cp_ret0;
     103    int _tmp_cp_ret0;
    104104    ((void)(((void)(_tmp_cp_ret0=__extension__ __fred__Fi_i__1(3))) , _tmp_cp_ret0));
    105105    ((void)(_tmp_cp_ret0) /* ^?{} */);
    106     __extension__ signed int __mary__Fi_i__2(signed int __p__i_2){
    107         __attribute__ ((unused)) signed int ___retval_mary__i_2;
     106    __extension__ int __mary__Fi_i__2(int __p__i_2){
     107        __attribute__ ((unused)) int ___retval_mary__i_2;
    108108    }
    109109    ((void)__extension__ sizeof(3));
    110     ((void)__extension__ (((signed int )(3!=((signed int )0))) || ((signed int )(4!=((signed int )0)))));
     110    ((void)__extension__ (((int )(3!=((int )0))) || ((int )(4!=((int )0)))));
    111111    ((void)__extension__ __alignof__(__extension__ __a__i_2));
    112     ((void)(((signed int )(__extension__ __a__i_2!=((signed int )0))) || ((signed int )((((signed int )(__extension__ __b__i_2!=((signed int )0))) && ((signed int )(__extension__ __c__i_2!=((signed int )0))))!=((signed int )0)))));
    113     ((void)(((signed int )((__extension__ __a__i_2>__extension__ __b__i_2)!=((signed int )0))) ? __extension__ __c__i_2 : __extension__ __c__i_2));
     112    ((void)(((int )(__extension__ __a__i_2!=((int )0))) || ((int )((((int )(__extension__ __b__i_2!=((int )0))) && ((int )(__extension__ __c__i_2!=((int )0))))!=((int )0)))));
     113    ((void)(((int )((__extension__ __a__i_2>__extension__ __b__i_2)!=((int )0))) ? __extension__ __c__i_2 : __extension__ __c__i_2));
    114114    ((void)(__extension__ __a__i_2=__extension__ (__extension__ __b__i_2+__extension__ __c__i_2)));
    115115    ((void)(((void)(((void)__extension__ __a__i_2) , __extension__ __b__i_2)) , __extension__ __c__i_2));
  • src/tests/.expect/64/gccExtensions.txt

    rb2e2e34 r21a1efb  
    1 __attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(unsigned long int __size);
     1__attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(long unsigned int __size);
    22__attribute__ ((__nothrow__,__leaf__)) extern void free(void *__ptr);
    33__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void abort(void);
    4 __attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern signed int atexit(void (*__func)(void));
    5 __attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(signed int __status);
    6 extern signed int printf(const char *__restrict __format, ...);
    7 extern signed int __x__i_1 asm ( "xx" );
    8 signed int __main__Fi_iPPCc__1(signed int __argc__i_1, const char **__argv__PPCc_1){
    9     __attribute__ ((unused)) signed int ___retval_main__i_1;
     4__attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern int atexit(void (*__func)(void));
     5__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(int __status);
     6extern int printf(const char *__restrict __format, ...);
     7extern int __x__i_1 asm ( "xx" );
     8int __main__Fi_iPPCc__1(int __argc__i_1, const char **__argv__PPCc_1){
     9    __attribute__ ((unused)) int ___retval_main__i_1;
    1010    asm ( "nop" :  :  :  );
    1111    asm ( "nop" :  :  :  );
    1212    asm ( "nop" :  :  :  );
    13     static signed int __y__i_2 asm ( "yy" );
    14     static signed int *__z__Pi_2 asm ( "zz" );
    15     signed int __src__i_2;
    16     signed int __dst__i_2;
    17     asm volatile ( "mov %1, %0\n\t" "add $1, %0" :  :  :  );
    18     asm volatile ( "mov %1, %0\n\t" "add $1, %0" : "=" "r" ( __dst__i_2 ) :  :  );
    19     asm volatile ( "mov %1, %0\n\t" "add $1, %0" : "=r" ( __dst__i_2 ) : "r" ( __src__i_2 ) :  );
    20     asm ( "mov %1, %0\n\t" "add $1, %0" : "=r" ( __dst__i_2 ), "=r" ( __src__i_2 ) : [ __src__i_2 ] "r" ( __dst__i_2 ) : "r0" );
     13    static int __y__i_2 asm ( "yy" );
     14    static int *__z__Pi_2 asm ( "zz" );
     15    int __src__i_2;
     16    int __dst__i_2;
     17    asm volatile ( "mov %1, %0\n\tadd $1, %0" :  :  :  );
     18    asm volatile ( "mov %1, %0\n\tadd $1, %0" : "=r" ( __dst__i_2 ) :  :  );
     19    asm volatile ( "mov %1, %0\n\tadd $1, %0" : "=r" ( __dst__i_2 ) : "r" ( __src__i_2 ) :  );
     20    asm ( "mov %1, %0\n\tadd $1, %0" : "=r" ( __dst__i_2 ), "=r" ( __src__i_2 ) : [ __src__i_2 ] "r" ( __dst__i_2 ) : "r0" );
    2121    L2: L1: asm goto ( "frob %%r5, %1; jc %l[L1]; mov (%2), %%r5" :  : "r" ( __src__i_2 ), "r" ( (&__dst__i_2) ) : "r5", "memory" : L1, L2 );
    2222    double _Complex __c1__Xd_2;
    2323    double _Complex __c2__Xd_2;
    24     const signed int __i1__Ci_2;
    25     const signed int __i2__Ci_2;
    26     const signed int __i3__Ci_2;
    27     inline signed int __f1__Fi___2(){
    28         __attribute__ ((unused)) signed int ___retval_f1__i_2;
     24    const int __i1__Ci_2;
     25    const int __i2__Ci_2;
     26    const int __i3__Ci_2;
     27    inline int __f1__Fi___2(){
     28        __attribute__ ((unused)) int ___retval_f1__i_2;
    2929    }
    30     inline signed int __f2__Fi___2(){
    31         __attribute__ ((unused)) signed int ___retval_f2__i_2;
     30    inline int __f2__Fi___2(){
     31        __attribute__ ((unused)) int ___retval_f2__i_2;
    3232    }
    33     signed int __s1__i_2;
    34     signed int __s2__i_2;
    35     volatile signed int __v1__Vi_2;
    36     volatile signed int __v2__Vi_2;
    37     signed int __t1___2;
    38     signed int __t2___2;
    39     __extension__ const signed int __ex__Ci_2;
     33    int __s1__i_2;
     34    int __s2__i_2;
     35    volatile int __v1__Vi_2;
     36    volatile int __v2__Vi_2;
     37    int __t1___2;
     38    int __t2___2;
     39    __extension__ const int __ex__Ci_2;
    4040    struct S {
    41         __extension__ signed int __a__i_2;
    42         __extension__ signed int __b__i_2;
    43         __extension__ signed int __c__i_2;
     41        __extension__ int __a__i_2;
     42        __extension__ int __b__i_2;
     43        __extension__ int __c__i_2;
    4444    };
    4545    inline void ___constructor__F_R2sS_autogen___2(struct S *___dst__R2sS_2){
     
    6666        return ((struct S )___ret__2sS_2);
    6767    }
    68     inline void ___constructor__F_R2sSi_autogen___2(struct S *___dst__R2sS_2, signed int __a__i_2){
     68    inline void ___constructor__F_R2sSi_autogen___2(struct S *___dst__R2sS_2, int __a__i_2){
    6969        ((void)((*___dst__R2sS_2).__a__i_2=__a__i_2) /* ?{} */);
    7070        ((void)((*___dst__R2sS_2).__b__i_2) /* ?{} */);
    7171        ((void)((*___dst__R2sS_2).__c__i_2) /* ?{} */);
    7272    }
    73     inline void ___constructor__F_R2sSii_autogen___2(struct S *___dst__R2sS_2, signed int __a__i_2, signed int __b__i_2){
     73    inline void ___constructor__F_R2sSii_autogen___2(struct S *___dst__R2sS_2, int __a__i_2, int __b__i_2){
    7474        ((void)((*___dst__R2sS_2).__a__i_2=__a__i_2) /* ?{} */);
    7575        ((void)((*___dst__R2sS_2).__b__i_2=__b__i_2) /* ?{} */);
    7676        ((void)((*___dst__R2sS_2).__c__i_2) /* ?{} */);
    7777    }
    78     inline void ___constructor__F_R2sSiii_autogen___2(struct S *___dst__R2sS_2, signed int __a__i_2, signed int __b__i_2, signed int __c__i_2){
     78    inline void ___constructor__F_R2sSiii_autogen___2(struct S *___dst__R2sS_2, int __a__i_2, int __b__i_2, int __c__i_2){
    7979        ((void)((*___dst__R2sS_2).__a__i_2=__a__i_2) /* ?{} */);
    8080        ((void)((*___dst__R2sS_2).__b__i_2=__b__i_2) /* ?{} */);
    8181        ((void)((*___dst__R2sS_2).__c__i_2=__c__i_2) /* ?{} */);
    8282    }
    83     signed int __i__i_2 = ((signed int )__extension__ 3);
    84     __extension__ signed int __a__i_2;
    85     __extension__ signed int __b__i_2;
    86     __extension__ signed int __c__i_2;
     83    int __i__i_2 = ((int )__extension__ 3);
     84    __extension__ int __a__i_2;
     85    __extension__ int __b__i_2;
     86    __extension__ int __c__i_2;
    8787    ((void)(((void)(((void)__extension__ __a__i_2) , __extension__ __b__i_2)) , __extension__ __c__i_2));
    8888    ((void)(__extension__ __a__i_2=(__extension__ __b__i_2+__extension__ __c__i_2)));
    8989    ((void)(__extension__ __a__i_2=__extension__ (__extension__ __b__i_2+__extension__ __c__i_2)));
    90     signed int __a1__i_2;
    91     const signed int __a2__Ci_2;
    92     static const signed int __a3__Ci_2;
    93     static const signed int __a4__Ci_2;
    94     static const signed int __a5__Ci_2;
    95     static const signed int __a6__Ci_2;
    96     static const signed int __a7__Ci_2;
    97     signed int *__p1__Pi_2;
    98     signed int *__p2__Pi_2;
     90    int __a1__i_2;
     91    const int __a2__Ci_2;
     92    static const int __a3__Ci_2;
     93    static const int __a4__Ci_2;
     94    static const int __a5__Ci_2;
     95    static const int __a6__Ci_2;
     96    static const int __a7__Ci_2;
     97    int *__p1__Pi_2;
     98    int *__p2__Pi_2;
    9999    struct s1;
    100100    struct s2 {
    101         signed int __i__i_2;
     101        int __i__i_2;
    102102    };
    103103    inline void ___constructor__F_R3ss2_autogen___2(struct s2 *___dst__R3ss2_2){
     
    116116        return ((struct s2 )___ret__3ss2_2);
    117117    }
    118     inline void ___constructor__F_R3ss2i_autogen___2(struct s2 *___dst__R3ss2_2, signed int __i__i_2){
     118    inline void ___constructor__F_R3ss2i_autogen___2(struct s2 *___dst__R3ss2_2, int __i__i_2){
    119119        ((void)((*___dst__R3ss2_2).__i__i_2=__i__i_2) /* ?{} */);
    120120    }
    121121    struct s3 {
    122         signed int __i__i_2;
     122        int __i__i_2;
    123123    };
    124124    inline void ___constructor__F_R3ss3_autogen___2(struct s3 *___dst__R3ss3_2){
     
    137137        return ((struct s3 )___ret__3ss3_2);
    138138    }
    139     inline void ___constructor__F_R3ss3i_autogen___2(struct s3 *___dst__R3ss3_2, signed int __i__i_2){
     139    inline void ___constructor__F_R3ss3i_autogen___2(struct s3 *___dst__R3ss3_2, int __i__i_2){
    140140        ((void)((*___dst__R3ss3_2).__i__i_2=__i__i_2) /* ?{} */);
    141141    }
     
    143143    struct s3 __y1__3ss3_2;
    144144    struct s4 {
    145         signed int __i__i_2;
     145        int __i__i_2;
    146146    };
    147147    inline void ___constructor__F_R3ss4_autogen___2(struct s4 *___dst__R3ss4_2){
     
    160160        return ((struct s4 )___ret__3ss4_2);
    161161    }
    162     inline void ___constructor__F_R3ss4i_autogen___2(struct s4 *___dst__R3ss4_2, signed int __i__i_2){
     162    inline void ___constructor__F_R3ss4i_autogen___2(struct s4 *___dst__R3ss4_2, int __i__i_2){
    163163        ((void)((*___dst__R3ss4_2).__i__i_2=__i__i_2) /* ?{} */);
    164164    }
    165165    struct s4 __x2__3ss4_2;
    166166    struct s4 __y2__3ss4_2;
    167     signed int __m1__A0i_2[((unsigned long int )10)];
    168     signed int __m2__A0A0i_2[((unsigned long int )10)][((unsigned long int )10)];
    169     signed int __m3__A0A0i_2[((unsigned long int )10)][((unsigned long int )10)];
    170     ((void)(___retval_main__i_1=((signed int )0)) /* ?{} */);
    171     return ((signed int )___retval_main__i_1);
     167    int __m1__A0i_2[((long unsigned int )10)];
     168    int __m2__A0A0i_2[((long unsigned int )10)][((long unsigned int )10)];
     169    int __m3__A0A0i_2[((long unsigned int )10)][((long unsigned int )10)];
     170    ((void)(___retval_main__i_1=((int )0)) /* ?{} */);
     171    return ((int )___retval_main__i_1);
    172172    ((void)(___retval_main__i_1=0) /* ?{} */);
    173     return ((signed int )___retval_main__i_1);
     173    return ((int )___retval_main__i_1);
    174174}
    175175static inline int invoke_main(int argc, char* argv[], char* envp[]) { (void)argc; (void)argv; (void)envp; return __main__Fi_iPPCc__1(argc, argv); }
    176 __attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(unsigned long int __size);
     176__attribute__ ((__nothrow__,__leaf__,__malloc__)) extern void *malloc(long unsigned int __size);
    177177__attribute__ ((__nothrow__,__leaf__)) extern void free(void *__ptr);
    178178__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void abort(void);
    179 __attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern signed int atexit(void (*__func)(void));
    180 __attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(signed int __status);
    181 extern signed int printf(const char *__restrict __format, ...);
    182 static inline signed int invoke_main(signed int argc, char **argv, char **envp);
    183 signed int main(signed int __argc__i_1, char **__argv__PPc_1, char **__envp__PPc_1){
    184     __attribute__ ((unused)) signed int ___retval_main__i_1;
    185     signed int _tmp_cp_ret0;
     179__attribute__ ((__nothrow__,__leaf__,__nonnull__(1))) extern int atexit(void (*__func)(void));
     180__attribute__ ((__nothrow__,__leaf__,__noreturn__)) extern void exit(int __status);
     181extern int printf(const char *__restrict __format, ...);
     182static inline int invoke_main(int argc, char **argv, char **envp);
     183int main(int __argc__i_1, char **__argv__PPc_1, char **__envp__PPc_1){
     184    __attribute__ ((unused)) int ___retval_main__i_1;
     185    int _tmp_cp_ret0;
    186186    ((void)(___retval_main__i_1=(((void)(_tmp_cp_ret0=invoke_main(__argc__i_1, __argv__PPc_1, __envp__PPc_1))) , _tmp_cp_ret0)) /* ?{} */);
    187187    ((void)(_tmp_cp_ret0) /* ^?{} */);
    188     return ((signed int )___retval_main__i_1);
     188    return ((int )___retval_main__i_1);
    189189}
  • src/tests/.expect/io.txt

    rb2e2e34 r21a1efb  
    2727
    2828output basic types
    29 A 23 93
     29A
    30301 2 3 4 5 6 7 8
    31311.1 1.2 1.3
  • src/tests/.expect/user_literals.txt

    rb2e2e34 r21a1efb  
    5511.0714285714286
    6622.0457142857143
    7 secs 1
    8 secs 23
    9 mins 23
    10 hours 23
    11 _A_ 23
    12 _thingy_ 1234
    13 secs 65535
    14 mins 65535
    15 hours 65535
    16 _A_ 65535
    17 _thingy_ 65535
    18 secs 10
    19 hours 10
    20 mins 10
    21 _A_ 10
    22 _thingy_ 10
    23 secs abc
    24 mins
    25 hours abc
    26 _A_ abc
    27 _thingy_ abc
  • src/tests/Makefile.am

    rb2e2e34 r21a1efb  
    1111## Created On       : Sun May 31 09:08:15 2015
    1212## Last Modified By : Peter A. Buhr
    13 ## Last Modified On : Mon Sep 11 16:17:16 2017
    14 ## Update Count     : 45
     13## Last Modified On : Thu Jun  8 07:41:43 2017
     14## Update Count     : 44
    1515###############################################################################
    1616
     
    101101        ${CC} ${AM_CFLAGS} ${CFLAGS} -CFA -XCFA -p -XCFA -L ${<} -o ${@}
    102102
    103 literals : literals.c @CFA_BINDIR@/@CFA_NAME@
    104         ${CC} ${AM_CFLAGS} ${CFLAGS} -CFA -XCFA -p -XCFA -L ${<} -o ${@}
    105 
    106103gmp : gmp.c @CFA_BINDIR@/@CFA_NAME@
    107104        ${CC} ${AM_CFLAGS} ${CFLAGS} -lgmp ${<} -o ${@}
  • src/tests/Makefile.in

    rb2e2e34 r21a1efb  
    853853        ${CC} ${AM_CFLAGS} ${CFLAGS} -CFA -XCFA -p -XCFA -L ${<} -o ${@}
    854854
    855 literals : literals.c @CFA_BINDIR@/@CFA_NAME@
    856         ${CC} ${AM_CFLAGS} ${CFLAGS} -CFA -XCFA -p -XCFA -L ${<} -o ${@}
    857 
    858855gmp : gmp.c @CFA_BINDIR@/@CFA_NAME@
    859856        ${CC} ${AM_CFLAGS} ${CFLAGS} -lgmp ${<} -o ${@}
  • src/tests/io.c

    rb2e2e34 r21a1efb  
    1010// Created On       : Wed Mar  2 16:56:02 2016
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Mon Sep 11 08:53:41 2017
    13 // Update Count     : 81
     12// Last Modified On : Wed Aug 23 21:27:50 2017
     13// Update Count     : 79
    1414//
    1515
     
    1818int main() {
    1919        char c;                                                                                         // basic types
    20         signed char sc;
    21         unsigned char usc;
    2220        short int si;
    2321        unsigned short int usi;
     
    9189
    9290        sout | "input bacis types" | endl;
    93         &in | c | sc | usc                                                                      // character
     91        &in | c                                                                                         // character
    9492                | si | usi | i | ui | li | uli | lli | ulli             // integral
    9593                | f | d | ld                                                                    // floating point
     
    9997
    10098        sout | "output basic types" | endl;
    101         sout | c | ' ' | sc | ' ' | usc | endl                          // character
     99        sout | c | ' ' | endl                                                           // character
    102100                | si | usi | i | ui | li | uli | lli | ulli | endl // integral
    103101                | f | d | ld | endl                                                             // floating point
  • src/tests/io.data

    rb2e2e34 r21a1efb  
    1 A 23 93 1 2 3 4 5 6 7 8 1.1 1.2 1.3 1.1+2.3 1.1-2.3 1.1-2.3 abc xyz
     1A 1 2 3 4 5 6 7 8 1.1 1.2 1.3 1.1+2.3 1.1-2.3 1.1-2.3 abc xyz
  • src/tests/user_literals.c

    rb2e2e34 r21a1efb  
    1010// Created On       : Wed Sep  6 21:40:50 2017
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Sat Sep  9 08:31:32 2017
    13 // Update Count     : 48
     12// Last Modified On : Wed Sep  6 23:19:08 2017
     13// Update Count     : 36
    1414//
    1515
    1616#include <fstream>
    17 #include <wchar.h>
    18 #include <uchar.h>
    19 
    20 int ?`s( int s ) { sout | "secs" | s | endl; return s; }
    21 int ?`m( int m ) { sout | "mins" | m | endl; return m * 60; }
    22 int ?`h( int h ) { sout | "hours" | h | endl; return h * 3600; }
    23 int ?`_A_( int x ) { sout | "_A_" | x | endl; return x; }
    24 int ?`__thingy_( int x ) { sout | "_thingy_" | x | endl; return x; }
    25 
    26 int ?`s( const char * s ) { sout | "secs" | s | endl; return 0; }
    27 int ?`m( const char16_t * m ) { sout | "mins" | m | endl; return 0;}
    28 int ?`h( const char32_t * h ) { sout | "hours" | h | endl; return 0; }
    29 int ?`_A_( const wchar_t * str ) { sout | "_A_" | str | endl; return 0; }
    30 int ?`__thingy_( const char * str ) { sout | "_thingy_" | str | endl; return 0; }
    31 
    3217
    3318struct Weight {
    34         double stones;
     19    double stones;
    3520};
    36 void ?{}( Weight & w ) { w.stones = 0; }                                // operations
     21void ?{}( Weight & w ) { w.stones = 0; }        // constructors
    3722void ?{}( Weight & w, double w ) { w.stones = w; }
     23
    3824Weight ?+?( Weight l, Weight r ) { return (Weight){ l.stones + r.stones }; }
    3925ofstream * ?|?( ofstream * os, Weight w ) { return os | w.stones; }
    4026
    41 Weight ?`st( double w ) { return (Weight){ w }; }               // backquote for user literals
     27Weight ?`st( double w ) { return (Weight){ w }; } // user literals
    4228Weight ?`lb( double w ) { return (Weight){ w / 14.0 }; }
    4329Weight ?`kg( double w ) { return (Weight) { w * 0.1575}; }
    4430
     31int main() {
     32    Weight w, hw = { 14 };
     33    w = 11`st + 1`lb;
     34    sout | w | endl;
     35    w = 70.3`kg;
     36    sout | w | endl;
     37    w = 155`lb;
     38    sout | w | endl;
     39    w = 0x9b`lb;                // hexadecimal weight
     40    sout | w | endl;
     41    w = 0233`lb;                // octal weight
     42    sout | w | endl;
     43    w = 5`st + 8`kg + 25`lb + hw;
     44    sout | w | endl;
     45}
    4546
    46 int main() {
    47         Weight w, hw = { 14 };                                                          // 14 stone
    48         w = 11`st + 1`lb;
    49         sout | w | endl;
    50         w = 70.3`kg;
    51         sout | w | endl;
    52         w = 155`lb;
    53         sout | w | endl;
    54         w = 0x_9b_u`lb;                                                                         // hexadecimal unsigned weight (155)
    55         sout | w | endl;
    56         w = 0_233`lb;                                                                           // octal weight (155)
    57         sout | w | endl;
    58         w = 5`st + 8`kg + 25`lb + hw;
    59         sout | w | endl;
    6047
    61 //      0`secs;
    62         1`s;
    63         23`s;
    64         23u`m;
    65         23l`h;
    66         23_ul`_A_;
    67         1_234_LL`__thingy_;
    68 
    69         0xff_ffl;
    70         0xff_ff`s;
    71         0xff_ffu`m;
    72         0xff_ffl`h;
    73         0xff_fful`_A_;
    74         0xff_ffLL`__thingy_;
    75 
    76         '\n'`s;
    77         L'\n'`h;
    78         u'\n'`m;
    79         L_'\n'`_A_;
    80         U_'\n'`__thingy_;
    81 
    82         "abc"`s;
    83         u"abc"`m;
    84         U_"abc"`h;
    85         L"abc"`_A_;
    86         u8_"abc"`__thingy_;
    87 } // main
    8848
    8949// Local Variables: //
Note: See TracChangeset for help on using the changeset viewer.