Changeset d964c39


Ignore:
Timestamp:
Feb 25, 2023, 6:45:44 PM (3 years ago)
Author:
caparson <caparson@…>
Branches:
ADT, ast-experimental, master
Children:
601bd9e
Parents:
ce44c5f (diff), 2d028003 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

Files:
33 edited

Legend:

Unmodified
Added
Removed
  • libcfa/src/concurrency/clib/cfathread.cfa

    rce44c5f rd964c39  
    1616// #define EPOLL_FOR_SOCKETS
    1717
    18 #include <sys/socket.h> // first include because of anonymous types __SOCKADDR_ARG, __CONST_SOCKADDR_ARG
    1918#include <string.h>
    2019#include <errno.h>
     20#include <unistd.h>
     21#include <sys/socket.h>
    2122
    2223#include "fstream.hfa"
     
    2728#include "time.hfa"
    2829#include "stdlib.hfa"
    29 
     30#include "iofwd.hfa"
    3031#include "cfathread.h"
    3132
     
    470471}
    471472
    472 #include <unistd.h>
    473 
    474 #include <iofwd.hfa>
    475 
    476473extern "C" {
    477474        //--------------------
  • libcfa/src/concurrency/clib/cfathread.h

    rce44c5f rd964c39  
    1010// Created On       : Tue Sep 22 15:31:20 2020
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 12:00:32 2023
    13 // Update Count     : 5
     12// Last Modified On : Sat Feb 25 17:39:20 2023
     13// Update Count     : 6
    1414//
    1515
    1616#if defined(__cforall) || defined(__cplusplus)
    17 #include <sys/socket.h> // first include because of anonymous types __SOCKADDR_ARG, __CONST_SOCKADDR_ARG
    1817#include <unistd.h>
    1918#include <errno.h>
     19#include <sys/socket.h>
    2020
    2121extern "C" {
  • libcfa/src/concurrency/io/call.cfa.in

    rce44c5f rd964c39  
    3131Prelude = """#define __cforall_thread__
    3232
    33 #include <sys/socket.h> // first include because of anonymous types __SOCKADDR_ARG, __CONST_SOCKADDR_ARG
    3433#include <unistd.h>
    3534#include <errno.h>
     35#include <sys/socket.h>
    3636#include <time.hfa>
    3737
  • libcfa/src/concurrency/iofwd.hfa

    rce44c5f rd964c39  
    1616#pragma once
    1717
    18 #include <sys/socket.h> // first include because of anonymous types __SOCKADDR_ARG, __CONST_SOCKADDR_ARG
    1918#include <unistd.h>
     19#include <sys/socket.h>
    2020
    2121extern "C" {
  • libcfa/src/concurrency/kernel/cluster.hfa

    rce44c5f rd964c39  
    146146}
    147147
    148 static struct {
    149         const unsigned readyq;
    150         const unsigned io;
     148const static struct {
     149        unsigned readyq;
     150        unsigned io;
    151151} __shard_factor = { 2, 1 };
    152152
  • libcfa/src/concurrency/mutex_stmt.hfa

    rce44c5f rd964c39  
    44//-----------------------------------------------------------------------------
    55// is_lock
    6 trait is_lock(L & | sized(L)) {
     6forall(L & | sized(L))
     7trait is_lock {
    78        // For acquiring a lock
    89        void lock( L & );
  • libcfa/src/interpose.cfa

    rce44c5f rd964c39  
    1010// Created On       : Wed Mar 29 16:10:31 2017
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Sun Feb 19 17:09:16 2023
    13 // Update Count     : 183
     12// Last Modified On : Fri Feb 24 15:31:03 2023
     13// Update Count     : 185
    1414//
    1515
     
    101101                preload_libgcc();
    102102
    103 #pragma GCC diagnostic push
    104 #pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
     103                #pragma GCC diagnostic push
     104                #pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
    105105                INTERPOSE_LIBC( abort, version );
    106106                INTERPOSE_LIBC( exit , version );
    107 #pragma GCC diagnostic pop
     107                #pragma GCC diagnostic pop
    108108
    109109                if(__cfathreadabi_interpose_startup) __cfathreadabi_interpose_startup( do_interpose_symbol );
     
    273273        va_start( args, fmt );
    274274        __abort( false, fmt, args );
    275     // CONTROL NEVER REACHES HERE!
     275        // CONTROL NEVER REACHES HERE!
    276276        va_end( args );
    277277}
    278278
    279279void abort( bool signalAbort, const char fmt[], ... ) {
    280     va_list args;
    281     va_start( args, fmt );
    282     __abort( signalAbort, fmt, args );
    283     // CONTROL NEVER REACHES HERE!
    284     va_end( args );
     280        va_list args;
     281        va_start( args, fmt );
     282        __abort( signalAbort, fmt, args );
     283        // CONTROL NEVER REACHES HERE!
     284        va_end( args );
    285285}
    286286
  • libcfa/src/limits.cfa

    rce44c5f rd964c39  
    1010// Created On       : Wed Apr  6 18:06:52 2016
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Sun Jan  8 18:53:17 2023
    13 // Update Count     : 86
     12// Last Modified On : Fri Feb 17 12:25:39 2023
     13// Update Count     : 87
    1414//
    1515
    16 // need _GNU_SOURCE to access long double M_*l in math.h
    1716#include <limits.h>
    1817#include <float.h>
  • libcfa/src/vec/vec.hfa

    rce44c5f rd964c39  
    1818#include <math.hfa>
    1919
    20 trait fromint(T) {
     20forall(T)
     21trait fromint {
    2122    void ?{}(T&, int);
    2223};
    23 trait zeroinit(T) {
     24forall(T)
     25trait zeroinit {
    2426    void ?{}(T&, zero_t);
    2527};
    26 trait zero_assign(T) {
     28forall(T)
     29trait zero_assign {
    2730    T ?=?(T&, zero_t);
    2831};
    29 trait subtract(T) {
     32forall(T)
     33trait subtract {
    3034    T ?-?(T, T);
    3135};
    32 trait negate(T) {
     36forall(T)
     37trait negate {
    3338    T -?(T);
    3439};
    35 trait add(T) {
     40forall(T)
     41trait add {
    3642    T ?+?(T, T);
    3743};
    38 trait multiply(T) {
     44forall(T)
     45trait multiply {
    3946    T ?*?(T, T);
    4047};
    41 trait divide(T) {
     48forall(T)
     49trait divide {
    4250    T ?/?(T, T);
    4351};
    44 trait lessthan(T) {
     52forall(T)
     53trait lessthan {
    4554    int ?<?(T, T);
    4655};
    47 trait equality(T) {
     56forall(T)
     57trait equality {
    4858    int ?==?(T, T);
    4959};
    50 trait sqrt(T) {
     60forall(T)
     61trait sqrt {
    5162    T sqrt(T);
    5263};
  • src/AST/Fwd.hpp

    rce44c5f rd964c39  
    1515
    1616#pragma once
     17
     18template<typename> struct bitfield;
    1719
    1820#include "AST/Node.hpp"
     
    147149class TranslationGlobal;
    148150
     151// For the following types, only use the using type.
     152namespace CV {
     153        struct qualifier_flags;
     154        using Qualifiers = bitfield<qualifier_flags>;
    149155}
     156namespace Function {
     157        struct spec_flags;
     158        using Specs = bitfield<spec_flags>;
     159}
     160namespace Storage {
     161        struct class_flags;
     162        using Classes = bitfield<class_flags>;
     163}
     164namespace Linkage {
     165        struct spec_flags;
     166        using Spec = bitfield<spec_flags>;
     167}
     168
     169}
  • src/AST/Print.cpp

    rce44c5f rd964c39  
    2929namespace ast {
    3030
    31 template <typename C, typename... T>
    32 constexpr array<C,sizeof...(T)> make_array(T&&... values)
    33 {
    34         return array<C,sizeof...(T)>{
    35                 std::forward<T>(values)...
    36         };
     31namespace {
     32
     33template<typename C, typename... T>
     34constexpr array<C, sizeof...(T)> make_array( T&&... values ) {
     35        return array<C, sizeof...(T)>{ std::forward<T>( values )... };
     36}
     37
     38namespace Names {
     39        static constexpr auto FuncSpecifiers = make_array<const char*>(
     40                "inline", "_Noreturn", "fortran"
     41        );
     42
     43        static constexpr auto StorageClasses = make_array<const char*>(
     44                "extern", "static", "auto", "register", "__thread", "_Thread_local"
     45        );
     46
     47        static constexpr auto Qualifiers = make_array<const char*>(
     48                "const", "restrict", "volatile", "mutex", "_Atomic"
     49        );
     50}
     51
     52template<typename bits_t, size_t N>
     53void print( ostream & os, const bits_t & bits,
     54                const array<const char *, N> & names ) {
     55        if ( !bits.any() ) return;
     56        for ( size_t i = 0 ; i < N ; i += 1 ) {
     57                if ( bits[i] ) {
     58                        os << names[i] << ' ';
     59                }
     60        }
    3761}
    3862
     
    80104        static const char* Names[];
    81105
    82         struct Names {
    83                 static constexpr auto FuncSpecifiers = make_array<const char*>(
    84                         "inline", "_Noreturn", "fortran"
    85                 );
    86 
    87                 static constexpr auto StorageClasses = make_array<const char*>(
    88                         "extern", "static", "auto", "register", "__thread", "_Thread_local"
    89                 );
    90 
    91                 static constexpr auto Qualifiers = make_array<const char*>(
    92                         "const", "restrict", "volatile", "mutex", "_Atomic"
    93                 );
    94         };
    95 
    96         template<typename storage_t, size_t N>
    97         void print(const storage_t & storage, const array<const char *, N> & Names ) {
    98                 if ( storage.any() ) {
    99                         for ( size_t i = 0; i < Names.size(); i += 1 ) {
    100                                 if ( storage[i] ) {
    101                                         os << Names[i] << ' ';
    102                                 }
    103                         }
    104                 }
    105         }
    106 
    107         void print( const ast::Function::Specs & specs ) {
    108                 print(specs, Names::FuncSpecifiers);
    109         }
    110 
    111         void print( const ast::Storage::Classes & storage ) {
    112                 print(storage, Names::StorageClasses);
    113         }
    114 
    115         void print( const ast::CV::Qualifiers & qualifiers ) {
    116                 print(qualifiers, Names::Qualifiers);
    117         }
    118 
    119106        void print( const std::vector<ast::Label> & labels ) {
    120107                if ( labels.empty() ) return;
     
    230217                }
    231218
    232                 print( node->storage );
     219                ast::print( os, node->storage );
    233220                os << node->typeString();
    234221
     
    272259
    273260        void preprint( const ast::Type * node ) {
    274                 print( node->qualifiers );
     261                ast::print( os, node->qualifiers );
    275262        }
    276263
     
    278265                print( node->forall );
    279266                print( node->assertions );
    280                 print( node->qualifiers );
     267                ast::print( os, node->qualifiers );
    281268        }
    282269
    283270        void preprint( const ast::BaseInstType * node ) {
    284271                print( node->attributes );
    285                 print( node->qualifiers );
     272                ast::print( os, node->qualifiers );
    286273        }
    287274
     
    294281                }
    295282
    296                 print( node->storage );
     283                ast::print( os, node->storage );
    297284
    298285                if ( node->type ) {
     
    338325                if ( ! short_mode ) printAll( node->attributes );
    339326
    340                 print( node->storage );
    341                 print( node->funcSpec );
    342 
    343 
     327                ast::print( os, node->storage );
     328                ast::print( os, node->funcSpec );
    344329
    345330                if ( node->type && node->isTypeFixed ) {
     
    16271612};
    16281613
     1614} // namespace
     1615
    16291616void print( ostream & os, const ast::Node * node, Indenter indent ) {
    16301617        Printer printer { os, indent, false };
     
    16371624}
    16381625
    1639 // Annoyingly these needed to be defined out of line to avoid undefined references.
    1640 // The size here needs to be explicit but at least the compiler will produce an error
    1641 // if the wrong size is specified
    1642 constexpr array<const char*, 3> Printer::Names::FuncSpecifiers;
    1643 constexpr array<const char*, 6> Printer::Names::StorageClasses;
    1644 constexpr array<const char*, 5> Printer::Names::Qualifiers;
     1626void print( ostream & os, Function::Specs specs ) {
     1627        print( os, specs, Names::FuncSpecifiers );
    16451628}
     1629
     1630void print( ostream & os, Storage::Classes storage ) {
     1631        print( os, storage, Names::StorageClasses );
     1632}
     1633
     1634void print( ostream & os, CV::Qualifiers qualifiers ) {
     1635        print( os, qualifiers, Names::Qualifiers );
     1636}
     1637
     1638} // namespace ast
  • src/AST/Print.hpp

    rce44c5f rd964c39  
    1616#pragma once
    1717
    18 #include <iostream>
    19 #include <utility>   // for forward
     18#include <iosfwd>
    2019
    21 #include "AST/Node.hpp"
     20#include "AST/Fwd.hpp"
    2221#include "Common/Indenter.h"
    2322
    2423namespace ast {
    25 
    26 class Decl;
    2724
    2825/// Print a node with the given indenter
     
    4441}
    4542
     43/// Print each cv-qualifier used in the set, followed by a space.
     44void print( std::ostream & os, CV::Qualifiers );
     45/// Print each function specifier used in the set, followed by a space.
     46void print( std::ostream & os, Function::Specs );
     47/// Print each storage class used in the set, followed by a space.
     48void print( std::ostream & os, Storage::Classes );
     49
    4650}
  • src/Common/SemanticError.h

    rce44c5f rd964c39  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb  2 10:59:10 2023
    13 // Update Count     : 36
     12// Last Modified On : Sat Feb 25 12:01:31 2023
     13// Update Count     : 37
    1414//
    1515
     
    5656        {"self-assign"              , Severity::Warn    , "self assignment of expression: %s"                          },
    5757        {"reference-conversion"     , Severity::Warn    , "rvalue to reference conversion of rvalue: %s"               },
    58         {"qualifiers-zero_t-one_t"  , Severity::Warn    , "questionable use of type qualifier %s with %s"              },
     58        {"qualifiers-zero_t-one_t"  , Severity::Warn    , "questionable use of type qualifier(s) with %s"              },
    5959        {"aggregate-forward-decl"   , Severity::Warn    , "forward declaration of nested aggregate: %s"                },
    6060        {"superfluous-decl"         , Severity::Warn    , "declaration does not allocate storage: %s"                  },
  • src/Parser/DeclarationNode.cc

    rce44c5f rd964c39  
    1010// Created On       : Sat May 16 12:34:05 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 14:12:03 2023
    13 // Update Count     : 1388
     12// Last Modified On : Sat Feb 25 12:15:40 2023
     13// Update Count     : 1404
    1414//
    1515
     
    254254        newnode->type->enumeration.typed = typed;
    255255        newnode->type->enumeration.hiding = hiding;
    256         if ( base && base->type)  {
     256        if ( base && base->type )  {
    257257                newnode->type->base = base->type;
    258258        } // if
     
    567567
    568568        checkQualifiers( type, q->type );
    569         if ( (builtin == Zero || builtin == One) && q->type->qualifiers.val != 0 && error.length() == 0 ) {
    570                 SemanticWarning( yylloc, Warning::BadQualifiersZeroOne, Type::QualifiersNames[ilog2( q->type->qualifiers.val )], builtinTypeNames[builtin] );
     569        if ( (builtin == Zero || builtin == One) && q->type->qualifiers.any() && error.length() == 0 ) {
     570                SemanticWarning( yylloc, Warning::BadQualifiersZeroOne, builtinTypeNames[builtin] );
    571571        } // if
    572572        addQualifiersToType( q->type, type );
     
    984984
    985985                        if ( DeclarationNode * extr = cur->extractAggregate() ) {
    986                                 // handle the case where a structure declaration is contained within an object or type declaration
     986                                // Handle the case where a SUE declaration is contained within an object or type declaration.
     987
     988                                assert( cur->type );
     989                                // Replace anonymous SUE name with typedef name to prevent anonymous naming problems across translation units.
     990                                if ( cur->type->kind == TypeData::Symbolic && cur->type->symbolic.isTypedef ) {
     991                                        assert( extr->type );
     992                                        // Handle anonymous aggregates: typedef struct { int i; } foo
     993                                        extr->type->qualifiers.reset();         // clear any CVs associated with the aggregate
     994                                        if ( extr->type->kind == TypeData::Aggregate && extr->type->aggregate.anon ) {
     995                                                delete extr->type->aggregate.name;
     996                                                extr->type->aggregate.name = new string( "__anonymous_" + *cur->name );
     997                                                extr->type->aggregate.anon = false;
     998                                                assert( cur->type->base );
     999                                                if ( cur->type->base ) {
     1000                                                        delete cur->type->base->aggInst.aggregate->aggregate.name;
     1001                                                        cur->type->base->aggInst.aggregate->aggregate.name = new string( "__anonymous_" + *cur->name );
     1002                                                        cur->type->base->aggInst.aggregate->aggregate.anon = false;
     1003                                                        cur->type->base->aggInst.aggregate->qualifiers.reset();
     1004                                                } // if
     1005                                        } // if
     1006                                        // Handle anonymous enumeration: typedef enum { A, B, C } foo
     1007                                        if ( extr->type->kind == TypeData::Enum && extr->type->enumeration.anon ) {
     1008                                                delete extr->type->enumeration.name;
     1009                                                extr->type->enumeration.name = new string( "__anonymous_" + *cur->name );
     1010                                                extr->type->enumeration.anon = false;
     1011                                                assert( cur->type->base );
     1012                                                if ( cur->type->base ) {
     1013                                                        delete cur->type->base->aggInst.aggregate->enumeration.name;
     1014                                                        cur->type->base->aggInst.aggregate->enumeration.name = new string( "__anonymous_" + *cur->name );
     1015                                                        cur->type->base->aggInst.aggregate->enumeration.anon = false;
     1016                                                } // if
     1017                                        } // if
     1018                                } // if
    9871019
    9881020                                Declaration * decl = extr->build();
  • src/Parser/TypeData.h

    rce44c5f rd964c39  
    1010// Created On       : Sat May 16 15:18:36 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Sun Feb 19 09:09:39 2023
    13 // Update Count     : 204
     12// Last Modified On : Fri Feb 24 14:25:02 2023
     13// Update Count     : 205
    1414//
    1515
     
    4141        };
    4242
    43         struct AggInst_t {
     43        struct AggInst_t {                                                                      // handles SUE
    4444                TypeData * aggregate = nullptr;
    4545                ExpressionNode * params = nullptr;
  • src/Parser/parser.yy

    rce44c5f rd964c39  
    1010// Created On       : Sat Sep  1 20:22:55 2001
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Mon Feb 20 11:31:26 2023
    13 // Update Count     : 5896
     12// Last Modified On : Sat Feb 25 13:23:16 2023
     13// Update Count     : 5989
    1414//
    1515
     
    11731173        comma_expression_opt ';'
    11741174                { $$ = new StatementNode( build_expr( $1 ) ); }
    1175         | MUTEX '(' ')' comma_expression ';'
    1176                 { $$ = new StatementNode( build_mutex( nullptr, new StatementNode( build_expr( $4 ) ) ) ); }
    11771175        ;
    11781176
     
    12821280                {
    12831281                        $$ = new StatementNode( build_while( new CondCtl( nullptr, NEW_ONE ), maybe_build_compound( $4 ) ) );
    1284                         SemanticWarning( yylloc, Warning::SuperfluousElse, "" );
     1282                        SemanticWarning( yylloc, Warning::SuperfluousElse );
    12851283                }
    12861284        | WHILE '(' conditional_declaration ')' statement       %prec THEN
     
    12931291                {
    12941292                        $$ = new StatementNode( build_do_while( NEW_ONE, maybe_build_compound( $2 ) ) );
    1295                         SemanticWarning( yylloc, Warning::SuperfluousElse, "" );
     1293                        SemanticWarning( yylloc, Warning::SuperfluousElse );
    12961294                }
    12971295        | DO statement WHILE '(' comma_expression ')' ';'
     
    13041302                {
    13051303                        $$ = new StatementNode( build_for( new ForCtrl( (ExpressionNode * )nullptr, (ExpressionNode * )nullptr, (ExpressionNode * )nullptr ), maybe_build_compound( $4 ) ) );
    1306                         SemanticWarning( yylloc, Warning::SuperfluousElse, "" );
     1304                        SemanticWarning( yylloc, Warning::SuperfluousElse );
    13071305                }
    13081306        | FOR '(' for_control_expression_list ')' statement     %prec THEN
     
    15841582        ;
    15851583
    1586 // If MUTEX becomes a general qualifier, there are shift/reduce conflicts, so change syntax to "with mutex".
     1584// If MUTEX becomes a general qualifier, there are shift/reduce conflicts, so possibly change syntax to "with mutex".
    15871585mutex_statement:
    1588         MUTEX '(' argument_expression_list ')' statement
    1589                 { $$ = new StatementNode( build_mutex( $3, $5 ) ); }
     1586        MUTEX '(' argument_expression_list_opt ')' statement
     1587                {
     1588                        if ( ! $3 ) { SemanticError( yylloc, "mutex argument list cannot be empty." ); $$ = nullptr; }
     1589                        $$ = new StatementNode( build_mutex( $3, $5 ) );
     1590                }
    15901591        ;
    15911592
     
    19411942                        // if type_specifier is an anon aggregate => name
    19421943                        typedefTable.addToEnclosingScope( *$3->name, TYPEDEFname, "4" );
    1943                         $$ = $3->addType( $2 )->addTypedef();
     1944                        $$ = $3->addType( $2 )->addTypedef();           // watchout frees $2 and $3
    19441945                }
    19451946        | typedef_declaration pop ',' push declarator
     
    19851986                {
    19861987                        assert( $1->type );
    1987                         if ( $1->type->qualifiers.val != 0 ) {
    1988                                 SemanticError( yylloc, "Useless type qualifier in empty declaration." ); $$ = nullptr;
     1988                        if ( $1->type->qualifiers.any() ) {                     // CV qualifiers ?
     1989                                SemanticError( yylloc, "Useless type qualifier(s) in empty declaration." ); $$ = nullptr;
     1990                        }
     1991                        // enums are never empty declarations because there must have at least one enumeration.
     1992                        if ( $1->type->kind == TypeData::AggregateInst && $1->storageClasses.any() ) { // storage class ?
     1993                                SemanticError( yylloc, "Useless storage qualifier(s) in empty aggregate declaration." ); $$ = nullptr;
    19891994                        }
    19901995                }
     
    20062011        | sue_declaration_specifier invalid_types
    20072012                {
    2008                         SemanticError( yylloc,
    2009                                                   ::toString( "Missing ';' after end of ",
    2010                                                                           $1->type->enumeration.name ? "enum" : AggregateDecl::aggrString( $1->type->aggregate.kind ),
    2011                                                                           " declaration" ) );
     2013                        SemanticError( yylloc, ::toString( "Missing ';' after end of ",
     2014                                $1->type->enumeration.name ? "enum" : AggregateDecl::aggrString( $1->type->aggregate.kind ),
     2015                                " declaration" ) );
    20122016                        $$ = nullptr;
    20132017                }
     
    25882592        | ENUM '(' cfa_abstract_parameter_declaration ')' attribute_list_opt '{' enumerator_list comma_opt '}'
    25892593                {
    2590                         if ( $3->storageClasses.val != 0 || $3->type->qualifiers.val != 0 )
     2594                        if ( $3->storageClasses.val != 0 || $3->type->qualifiers.any() )
    25912595                        { SemanticError( yylloc, "storage-class and CV qualifiers are not meaningful for enumeration constants, which are const." ); }
    25922596
     
    25992603        | ENUM '(' cfa_abstract_parameter_declaration ')' attribute_list_opt identifier attribute_list_opt
    26002604                {
    2601                         if ( $3->storageClasses.val != 0 || $3->type->qualifiers.val != 0 ) { SemanticError( yylloc, "storage-class and CV qualifiers are not meaningful for enumeration constants, which are const." ); }
     2605                        if ( $3->storageClasses.any() || $3->type->qualifiers.val != 0 ) { SemanticError( yylloc, "storage-class and CV qualifiers are not meaningful for enumeration constants, which are const." ); }
    26022606                        typedefTable.makeTypedef( *$6 );
    26032607                }
     
    29862990        TRAIT identifier_or_type_name '(' type_parameter_list ')' '{' '}'
    29872991                {
    2988                         SemanticWarning( yylloc, Warning::DeprecTraitSyntax, "" );
     2992                        SemanticWarning( yylloc, Warning::DeprecTraitSyntax );
    29892993                        $$ = DeclarationNode::newTrait( $2, $4, nullptr );
    29902994                }
     
    29932997        | TRAIT identifier_or_type_name '(' type_parameter_list ')' '{' push trait_declaration_list pop '}'
    29942998                {
    2995                         SemanticWarning( yylloc, Warning::DeprecTraitSyntax, "" );
     2999                        SemanticWarning( yylloc, Warning::DeprecTraitSyntax );
    29963000                        $$ = DeclarationNode::newTrait( $2, $4, $8 );
    29973001                }
     
    30583062                { $$ = DeclarationNode::newDirectiveStmt( new StatementNode( build_directive( $1 ) ) ); }
    30593063        | declaration
     3064                {
     3065                        // Variable declarations of anonymous types requires creating a unique type-name across multiple translation
     3066                        // unit, which is a dubious task, especially because C uses name rather than structural typing; hence it is
     3067                        // disallowed at the moment.
     3068                        if ( $1->linkage == LinkageSpec::Cforall && ! $1->storageClasses.is_static && $1->type && $1->type->kind == TypeData::AggregateInst ) {
     3069                                if ( $1->type->aggInst.aggregate->kind == TypeData::Enum && $1->type->aggInst.aggregate->enumeration.anon ) {
     3070                                        SemanticError( yylloc, "extern anonymous enumeration is currently unimplemented." ); $$ = nullptr;
     3071                                } else if ( $1->type->aggInst.aggregate->aggregate.anon ) { // handles struct or union
     3072                                        SemanticError( yylloc, "extern anonymous struct/union is currently unimplemented." ); $$ = nullptr;
     3073                                }
     3074                        }
     3075                }
    30603076        | IDENTIFIER IDENTIFIER
    30613077                { IdentifierBeforeIdentifier( *$1.str, *$2.str, " declaration" ); $$ = nullptr; }
     
    31033119        | type_qualifier_list
    31043120                {
    3105                         if ( $1->type->qualifiers.val ) { SemanticError( yylloc, "CV qualifiers cannot be distributed; only storage-class and forall qualifiers." ); }
     3121                        if ( $1->type->qualifiers.any() ) { SemanticError( yylloc, "CV qualifiers cannot be distributed; only storage-class and forall qualifiers." ); }
    31063122                        if ( $1->type->forall ) forall = true;          // remember generic type
    31073123                }
     
    31143130        | declaration_qualifier_list
    31153131                {
    3116                         if ( $1->type && $1->type->qualifiers.val ) { SemanticError( yylloc, "CV qualifiers cannot be distributed; only storage-class and forall qualifiers." ); }
     3132                        if ( $1->type && $1->type->qualifiers.any() ) { SemanticError( yylloc, "CV qualifiers cannot be distributed; only storage-class and forall qualifiers." ); }
    31173133                        if ( $1->type && $1->type->forall ) forall = true; // remember generic type
    31183134                }
     
    31253141        | declaration_qualifier_list type_qualifier_list
    31263142                {
    3127                         if ( ($1->type && $1->type->qualifiers.val) || ($2->type && $2->type->qualifiers.val) ) { SemanticError( yylloc, "CV qualifiers cannot be distributed; only storage-class and forall qualifiers." ); }
     3143                        if ( ($1->type && $1->type->qualifiers.any()) || ($2->type && $2->type->qualifiers.any()) ) { SemanticError( yylloc, "CV qualifiers cannot be distributed; only storage-class and forall qualifiers." ); }
    31283144                        if ( ($1->type && $1->type->forall) || ($2->type && $2->type->forall) ) forall = true; // remember generic type
    31293145                }
  • tests/.expect/attributes.arm64.txt

    rce44c5f rd964c39  
    2626    return _X4_retS12__anonymous0_1;
    2727}
    28 __attribute__ ((unused)) struct __anonymous0 _X5DummyS12__anonymous0_1;
     28__attribute__ ((unused)) static struct __anonymous0 _X5DummyS12__anonymous0_1;
    2929struct __attribute__ ((unused)) Agn1;
    3030struct __attribute__ ((unused)) Agn2 {
  • tests/.expect/attributes.x64.txt

    rce44c5f rd964c39  
    2626    return _X4_retS12__anonymous0_1;
    2727}
    28 __attribute__ ((unused)) struct __anonymous0 _X5DummyS12__anonymous0_1;
     28__attribute__ ((unused)) static struct __anonymous0 _X5DummyS12__anonymous0_1;
    2929struct __attribute__ ((unused)) Agn1;
    3030struct __attribute__ ((unused)) Agn2 {
  • tests/.expect/attributes.x86.txt

    rce44c5f rd964c39  
    2626    return _X4_retS12__anonymous0_1;
    2727}
    28 __attribute__ ((unused)) struct __anonymous0 _X5DummyS12__anonymous0_1;
     28__attribute__ ((unused)) static struct __anonymous0 _X5DummyS12__anonymous0_1;
    2929struct __attribute__ ((unused)) Agn1;
    3030struct __attribute__ ((unused)) Agn2 {
  • tests/.expect/declarationSpecifier.arm64.txt

    rce44c5f rd964c39  
    5151
    5252}
    53 volatile const struct __anonymous0 _X3x10KVS12__anonymous0_1;
     53static volatile const struct __anonymous0 _X3x10KVS12__anonymous0_1;
    5454struct __anonymous1 {
    5555    signed int _X1ii_1;
     
    9696
    9797}
    98 volatile const struct __anonymous1 _X3x11KVS12__anonymous1_1;
     98static volatile const struct __anonymous1 _X3x11KVS12__anonymous1_1;
    9999struct __anonymous2 {
    100100    signed int _X1ii_1;
     
    141141
    142142}
    143 volatile const struct __anonymous2 _X3x12KVS12__anonymous2_1;
     143static volatile const struct __anonymous2 _X3x12KVS12__anonymous2_1;
    144144struct __anonymous3 {
    145145    signed int _X1ii_1;
     
    322322}
    323323static volatile const struct __anonymous6 _X3x16KVS12__anonymous6_1;
    324 struct __anonymous7 {
    325     signed int _X1ii_1;
    326 };
    327 static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1);
    328 static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1);
    329 static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1);
    330 static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1);
    331 static inline void _X12_constructorFv_S12__anonymous7i_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed int _X1ii_1);
    332 static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
    333     {
    334         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ?{} */);
    335     }
    336 
    337 }
    338 static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
    339     {
    340         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1) /* ?{} */);
    341     }
    342 
    343 }
    344 static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
    345     {
    346         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ^?{} */);
    347     }
    348 
    349 }
    350 static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
    351     struct __anonymous7 _X4_retS12__anonymous7_1;
    352     {
    353         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1));
    354     }
    355 
    356     {
    357         ((void)_X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1((&_X4_retS12__anonymous7_1), (*_X4_dstS12__anonymous7_1)));
    358     }
    359 
    360     return _X4_retS12__anonymous7_1;
    361 }
    362 static inline void _X12_constructorFv_S12__anonymous7i_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed int _X1ii_1){
    363     {
    364         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X1ii_1) /* ?{} */);
    365     }
    366 
    367 }
    368 static volatile const struct __anonymous7 _X3x17KVS12__anonymous7_1;
    369324volatile const signed short int _X3x20KVs_1;
    370325static volatile const signed short int _X3x21KVs_1;
     
    375330static volatile const signed short int _X3x26KVs_1;
    376331static volatile const signed short int _X3x27KVs_1;
     332struct __anonymous7 {
     333    signed short int _X1is_1;
     334};
     335static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1);
     336static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1);
     337static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1);
     338static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1);
     339static inline void _X12_constructorFv_S12__anonymous7s_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed short int _X1is_1);
     340static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
     341    {
     342        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1) /* ?{} */);
     343    }
     344
     345}
     346static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
     347    {
     348        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1=_X4_srcS12__anonymous7_1._X1is_1) /* ?{} */);
     349    }
     350
     351}
     352static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
     353    {
     354        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1) /* ^?{} */);
     355    }
     356
     357}
     358static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
     359    struct __anonymous7 _X4_retS12__anonymous7_1;
     360    {
     361        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1=_X4_srcS12__anonymous7_1._X1is_1));
     362    }
     363
     364    {
     365        ((void)_X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1((&_X4_retS12__anonymous7_1), (*_X4_dstS12__anonymous7_1)));
     366    }
     367
     368    return _X4_retS12__anonymous7_1;
     369}
     370static inline void _X12_constructorFv_S12__anonymous7s_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed short int _X1is_1){
     371    {
     372        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1=_X1is_1) /* ?{} */);
     373    }
     374
     375}
     376static volatile const struct __anonymous7 _X3x29KVS12__anonymous7_1;
    377377struct __anonymous8 {
    378378    signed short int _X1is_1;
     
    419419
    420420}
    421 volatile const struct __anonymous8 _X3x29KVS12__anonymous8_1;
     421static volatile const struct __anonymous8 _X3x30KVS12__anonymous8_1;
    422422struct __anonymous9 {
    423423    signed short int _X1is_1;
     
    464464
    465465}
    466 volatile const struct __anonymous9 _X3x30KVS12__anonymous9_1;
     466static volatile const struct __anonymous9 _X3x31KVS12__anonymous9_1;
    467467struct __anonymous10 {
    468468    signed short int _X1is_1;
     
    509509
    510510}
    511 volatile const struct __anonymous10 _X3x31KVS13__anonymous10_1;
     511static volatile const struct __anonymous10 _X3x32KVS13__anonymous10_1;
    512512struct __anonymous11 {
    513513    signed short int _X1is_1;
     
    554554
    555555}
    556 static volatile const struct __anonymous11 _X3x32KVS13__anonymous11_1;
     556static volatile const struct __anonymous11 _X3x33KVS13__anonymous11_1;
    557557struct __anonymous12 {
    558558    signed short int _X1is_1;
     
    599599
    600600}
    601 static volatile const struct __anonymous12 _X3x33KVS13__anonymous12_1;
     601static volatile const struct __anonymous12 _X3x34KVS13__anonymous12_1;
    602602struct __anonymous13 {
    603603    signed short int _X1is_1;
     
    644644
    645645}
    646 static volatile const struct __anonymous13 _X3x34KVS13__anonymous13_1;
    647 struct __anonymous14 {
    648     signed short int _X1is_1;
    649 };
    650 static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1);
    651 static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1);
    652 static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1);
    653 static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1);
    654 static inline void _X12_constructorFv_S13__anonymous14s_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed short int _X1is_1);
    655 static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
    656     {
    657         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ?{} */);
    658     }
    659 
    660 }
    661 static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
    662     {
    663         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1) /* ?{} */);
    664     }
    665 
    666 }
    667 static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
    668     {
    669         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ^?{} */);
    670     }
    671 
    672 }
    673 static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
    674     struct __anonymous14 _X4_retS13__anonymous14_1;
    675     {
    676         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1));
    677     }
    678 
    679     {
    680         ((void)_X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1((&_X4_retS13__anonymous14_1), (*_X4_dstS13__anonymous14_1)));
    681     }
    682 
    683     return _X4_retS13__anonymous14_1;
    684 }
    685 static inline void _X12_constructorFv_S13__anonymous14s_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed short int _X1is_1){
    686     {
    687         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X1is_1) /* ?{} */);
    688     }
    689 
    690 }
    691 static volatile const struct __anonymous14 _X3x35KVS13__anonymous14_1;
    692 struct __anonymous15 {
    693     signed short int _X1is_1;
    694 };
    695 static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1);
    696 static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1);
    697 static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1);
    698 static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1);
    699 static inline void _X12_constructorFv_S13__anonymous15s_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed short int _X1is_1);
    700 static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
    701     {
    702         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ?{} */);
    703     }
    704 
    705 }
    706 static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
    707     {
    708         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1) /* ?{} */);
    709     }
    710 
    711 }
    712 static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
    713     {
    714         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ^?{} */);
    715     }
    716 
    717 }
    718 static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
    719     struct __anonymous15 _X4_retS13__anonymous15_1;
    720     {
    721         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1));
    722     }
    723 
    724     {
    725         ((void)_X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1((&_X4_retS13__anonymous15_1), (*_X4_dstS13__anonymous15_1)));
    726     }
    727 
    728     return _X4_retS13__anonymous15_1;
    729 }
    730 static inline void _X12_constructorFv_S13__anonymous15s_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed short int _X1is_1){
    731     {
    732         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X1is_1) /* ?{} */);
    733     }
    734 
    735 }
    736 static volatile const struct __anonymous15 _X3x36KVS13__anonymous15_1;
     646static volatile const struct __anonymous13 _X3x35KVS13__anonymous13_1;
    737647_Thread_local signed int _X3x37i_1;
    738648__thread signed int _X3x38i_1;
     
    753663static inline volatile const signed short int _X3f27Fs___1();
    754664static inline volatile const signed short int _X3f28Fs___1();
     665struct __anonymous14 {
     666    signed int _X1ii_1;
     667};
     668static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1);
     669static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1);
     670static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1);
     671static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1);
     672static inline void _X12_constructorFv_S13__anonymous14i_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed int _X1ii_1);
     673static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
     674    {
     675        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1) /* ?{} */);
     676    }
     677
     678}
     679static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
     680    {
     681        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1=_X4_srcS13__anonymous14_1._X1ii_1) /* ?{} */);
     682    }
     683
     684}
     685static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
     686    {
     687        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1) /* ^?{} */);
     688    }
     689
     690}
     691static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
     692    struct __anonymous14 _X4_retS13__anonymous14_1;
     693    {
     694        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1=_X4_srcS13__anonymous14_1._X1ii_1));
     695    }
     696
     697    {
     698        ((void)_X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1((&_X4_retS13__anonymous14_1), (*_X4_dstS13__anonymous14_1)));
     699    }
     700
     701    return _X4_retS13__anonymous14_1;
     702}
     703static inline void _X12_constructorFv_S13__anonymous14i_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed int _X1ii_1){
     704    {
     705        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1=_X1ii_1) /* ?{} */);
     706    }
     707
     708}
     709static inline volatile const struct __anonymous14 _X3f31FS13__anonymous14___1();
     710struct __anonymous15 {
     711    signed int _X1ii_1;
     712};
     713static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1);
     714static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1);
     715static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1);
     716static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1);
     717static inline void _X12_constructorFv_S13__anonymous15i_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed int _X1ii_1);
     718static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
     719    {
     720        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1) /* ?{} */);
     721    }
     722
     723}
     724static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
     725    {
     726        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1=_X4_srcS13__anonymous15_1._X1ii_1) /* ?{} */);
     727    }
     728
     729}
     730static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
     731    {
     732        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1) /* ^?{} */);
     733    }
     734
     735}
     736static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
     737    struct __anonymous15 _X4_retS13__anonymous15_1;
     738    {
     739        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1=_X4_srcS13__anonymous15_1._X1ii_1));
     740    }
     741
     742    {
     743        ((void)_X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1((&_X4_retS13__anonymous15_1), (*_X4_dstS13__anonymous15_1)));
     744    }
     745
     746    return _X4_retS13__anonymous15_1;
     747}
     748static inline void _X12_constructorFv_S13__anonymous15i_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed int _X1ii_1){
     749    {
     750        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1=_X1ii_1) /* ?{} */);
     751    }
     752
     753}
     754static inline volatile const struct __anonymous15 _X3f32FS13__anonymous15___1();
    755755struct __anonymous16 {
    756756    signed int _X1ii_1;
     
    797797
    798798}
    799 static inline volatile const struct __anonymous16 _X3f31FS13__anonymous16___1();
     799static inline volatile const struct __anonymous16 _X3f33FS13__anonymous16___1();
    800800struct __anonymous17 {
    801801    signed int _X1ii_1;
     
    842842
    843843}
    844 static inline volatile const struct __anonymous17 _X3f32FS13__anonymous17___1();
     844static inline volatile const struct __anonymous17 _X3f34FS13__anonymous17___1();
    845845struct __anonymous18 {
    846846    signed int _X1ii_1;
     
    887887
    888888}
    889 static inline volatile const struct __anonymous18 _X3f33FS13__anonymous18___1();
     889static inline volatile const struct __anonymous18 _X3f35FS13__anonymous18___1();
    890890struct __anonymous19 {
    891891    signed int _X1ii_1;
     
    932932
    933933}
    934 static inline volatile const struct __anonymous19 _X3f34FS13__anonymous19___1();
     934static inline volatile const struct __anonymous19 _X3f36FS13__anonymous19___1();
    935935struct __anonymous20 {
    936936    signed int _X1ii_1;
     
    977977
    978978}
    979 static inline volatile const struct __anonymous20 _X3f35FS13__anonymous20___1();
     979static inline volatile const struct __anonymous20 _X3f37FS13__anonymous20___1();
    980980struct __anonymous21 {
    981981    signed int _X1ii_1;
     
    10221022
    10231023}
    1024 static inline volatile const struct __anonymous21 _X3f36FS13__anonymous21___1();
    1025 struct __anonymous22 {
    1026     signed int _X1ii_1;
    1027 };
    1028 static inline void _X12_constructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1);
    1029 static inline void _X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1);
    1030 static inline void _X11_destructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1);
    1031 static inline struct __anonymous22 _X16_operator_assignFS13__anonymous22_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1);
    1032 static inline void _X12_constructorFv_S13__anonymous22i_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, signed int _X1ii_1);
    1033 static inline void _X12_constructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1){
    1034     {
    1035         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ?{} */);
    1036     }
    1037 
    1038 }
    1039 static inline void _X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1){
    1040     {
    1041         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1) /* ?{} */);
    1042     }
    1043 
    1044 }
    1045 static inline void _X11_destructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1){
    1046     {
    1047         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ^?{} */);
    1048     }
    1049 
    1050 }
    1051 static inline struct __anonymous22 _X16_operator_assignFS13__anonymous22_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1){
    1052     struct __anonymous22 _X4_retS13__anonymous22_1;
    1053     {
    1054         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1));
    1055     }
    1056 
    1057     {
    1058         ((void)_X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1((&_X4_retS13__anonymous22_1), (*_X4_dstS13__anonymous22_1)));
    1059     }
    1060 
    1061     return _X4_retS13__anonymous22_1;
    1062 }
    1063 static inline void _X12_constructorFv_S13__anonymous22i_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, signed int _X1ii_1){
    1064     {
    1065         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X1ii_1) /* ?{} */);
    1066     }
    1067 
    1068 }
    1069 static inline volatile const struct __anonymous22 _X3f37FS13__anonymous22___1();
    1070 struct __anonymous23 {
    1071     signed int _X1ii_1;
    1072 };
    1073 static inline void _X12_constructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1);
    1074 static inline void _X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1);
    1075 static inline void _X11_destructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1);
    1076 static inline struct __anonymous23 _X16_operator_assignFS13__anonymous23_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1);
    1077 static inline void _X12_constructorFv_S13__anonymous23i_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, signed int _X1ii_1);
    1078 static inline void _X12_constructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1){
    1079     {
    1080         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ?{} */);
    1081     }
    1082 
    1083 }
    1084 static inline void _X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1){
    1085     {
    1086         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1) /* ?{} */);
    1087     }
    1088 
    1089 }
    1090 static inline void _X11_destructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1){
    1091     {
    1092         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ^?{} */);
    1093     }
    1094 
    1095 }
    1096 static inline struct __anonymous23 _X16_operator_assignFS13__anonymous23_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1){
    1097     struct __anonymous23 _X4_retS13__anonymous23_1;
    1098     {
    1099         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1));
    1100     }
    1101 
    1102     {
    1103         ((void)_X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1((&_X4_retS13__anonymous23_1), (*_X4_dstS13__anonymous23_1)));
    1104     }
    1105 
    1106     return _X4_retS13__anonymous23_1;
    1107 }
    1108 static inline void _X12_constructorFv_S13__anonymous23i_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, signed int _X1ii_1){
    1109     {
    1110         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X1ii_1) /* ?{} */);
    1111     }
    1112 
    1113 }
    1114 static inline volatile const struct __anonymous23 _X3f38FS13__anonymous23___1();
     1024static inline volatile const struct __anonymous21 _X3f38FS13__anonymous21___1();
    11151025static inline volatile const signed short int _X3f41Fs___1();
    11161026static inline volatile const signed short int _X3f42Fs___1();
  • tests/.expect/declarationSpecifier.x64.txt

    rce44c5f rd964c39  
    5151
    5252}
    53 volatile const struct __anonymous0 _X3x10KVS12__anonymous0_1;
     53static volatile const struct __anonymous0 _X3x10KVS12__anonymous0_1;
    5454struct __anonymous1 {
    5555    signed int _X1ii_1;
     
    9696
    9797}
    98 volatile const struct __anonymous1 _X3x11KVS12__anonymous1_1;
     98static volatile const struct __anonymous1 _X3x11KVS12__anonymous1_1;
    9999struct __anonymous2 {
    100100    signed int _X1ii_1;
     
    141141
    142142}
    143 volatile const struct __anonymous2 _X3x12KVS12__anonymous2_1;
     143static volatile const struct __anonymous2 _X3x12KVS12__anonymous2_1;
    144144struct __anonymous3 {
    145145    signed int _X1ii_1;
     
    322322}
    323323static volatile const struct __anonymous6 _X3x16KVS12__anonymous6_1;
    324 struct __anonymous7 {
    325     signed int _X1ii_1;
    326 };
    327 static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1);
    328 static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1);
    329 static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1);
    330 static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1);
    331 static inline void _X12_constructorFv_S12__anonymous7i_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed int _X1ii_1);
    332 static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
    333     {
    334         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ?{} */);
    335     }
    336 
    337 }
    338 static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
    339     {
    340         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1) /* ?{} */);
    341     }
    342 
    343 }
    344 static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
    345     {
    346         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ^?{} */);
    347     }
    348 
    349 }
    350 static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
    351     struct __anonymous7 _X4_retS12__anonymous7_1;
    352     {
    353         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1));
    354     }
    355 
    356     {
    357         ((void)_X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1((&_X4_retS12__anonymous7_1), (*_X4_dstS12__anonymous7_1)));
    358     }
    359 
    360     return _X4_retS12__anonymous7_1;
    361 }
    362 static inline void _X12_constructorFv_S12__anonymous7i_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed int _X1ii_1){
    363     {
    364         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X1ii_1) /* ?{} */);
    365     }
    366 
    367 }
    368 static volatile const struct __anonymous7 _X3x17KVS12__anonymous7_1;
    369324volatile const signed short int _X3x20KVs_1;
    370325static volatile const signed short int _X3x21KVs_1;
     
    375330static volatile const signed short int _X3x26KVs_1;
    376331static volatile const signed short int _X3x27KVs_1;
     332struct __anonymous7 {
     333    signed short int _X1is_1;
     334};
     335static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1);
     336static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1);
     337static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1);
     338static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1);
     339static inline void _X12_constructorFv_S12__anonymous7s_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed short int _X1is_1);
     340static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
     341    {
     342        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1) /* ?{} */);
     343    }
     344
     345}
     346static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
     347    {
     348        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1=_X4_srcS12__anonymous7_1._X1is_1) /* ?{} */);
     349    }
     350
     351}
     352static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
     353    {
     354        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1) /* ^?{} */);
     355    }
     356
     357}
     358static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
     359    struct __anonymous7 _X4_retS12__anonymous7_1;
     360    {
     361        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1=_X4_srcS12__anonymous7_1._X1is_1));
     362    }
     363
     364    {
     365        ((void)_X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1((&_X4_retS12__anonymous7_1), (*_X4_dstS12__anonymous7_1)));
     366    }
     367
     368    return _X4_retS12__anonymous7_1;
     369}
     370static inline void _X12_constructorFv_S12__anonymous7s_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed short int _X1is_1){
     371    {
     372        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1=_X1is_1) /* ?{} */);
     373    }
     374
     375}
     376static volatile const struct __anonymous7 _X3x29KVS12__anonymous7_1;
    377377struct __anonymous8 {
    378378    signed short int _X1is_1;
     
    419419
    420420}
    421 volatile const struct __anonymous8 _X3x29KVS12__anonymous8_1;
     421static volatile const struct __anonymous8 _X3x30KVS12__anonymous8_1;
    422422struct __anonymous9 {
    423423    signed short int _X1is_1;
     
    464464
    465465}
    466 volatile const struct __anonymous9 _X3x30KVS12__anonymous9_1;
     466static volatile const struct __anonymous9 _X3x31KVS12__anonymous9_1;
    467467struct __anonymous10 {
    468468    signed short int _X1is_1;
     
    509509
    510510}
    511 volatile const struct __anonymous10 _X3x31KVS13__anonymous10_1;
     511static volatile const struct __anonymous10 _X3x32KVS13__anonymous10_1;
    512512struct __anonymous11 {
    513513    signed short int _X1is_1;
     
    554554
    555555}
    556 static volatile const struct __anonymous11 _X3x32KVS13__anonymous11_1;
     556static volatile const struct __anonymous11 _X3x33KVS13__anonymous11_1;
    557557struct __anonymous12 {
    558558    signed short int _X1is_1;
     
    599599
    600600}
    601 static volatile const struct __anonymous12 _X3x33KVS13__anonymous12_1;
     601static volatile const struct __anonymous12 _X3x34KVS13__anonymous12_1;
    602602struct __anonymous13 {
    603603    signed short int _X1is_1;
     
    644644
    645645}
    646 static volatile const struct __anonymous13 _X3x34KVS13__anonymous13_1;
    647 struct __anonymous14 {
    648     signed short int _X1is_1;
    649 };
    650 static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1);
    651 static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1);
    652 static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1);
    653 static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1);
    654 static inline void _X12_constructorFv_S13__anonymous14s_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed short int _X1is_1);
    655 static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
    656     {
    657         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ?{} */);
    658     }
    659 
    660 }
    661 static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
    662     {
    663         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1) /* ?{} */);
    664     }
    665 
    666 }
    667 static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
    668     {
    669         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ^?{} */);
    670     }
    671 
    672 }
    673 static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
    674     struct __anonymous14 _X4_retS13__anonymous14_1;
    675     {
    676         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1));
    677     }
    678 
    679     {
    680         ((void)_X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1((&_X4_retS13__anonymous14_1), (*_X4_dstS13__anonymous14_1)));
    681     }
    682 
    683     return _X4_retS13__anonymous14_1;
    684 }
    685 static inline void _X12_constructorFv_S13__anonymous14s_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed short int _X1is_1){
    686     {
    687         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X1is_1) /* ?{} */);
    688     }
    689 
    690 }
    691 static volatile const struct __anonymous14 _X3x35KVS13__anonymous14_1;
    692 struct __anonymous15 {
    693     signed short int _X1is_1;
    694 };
    695 static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1);
    696 static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1);
    697 static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1);
    698 static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1);
    699 static inline void _X12_constructorFv_S13__anonymous15s_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed short int _X1is_1);
    700 static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
    701     {
    702         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ?{} */);
    703     }
    704 
    705 }
    706 static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
    707     {
    708         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1) /* ?{} */);
    709     }
    710 
    711 }
    712 static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
    713     {
    714         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ^?{} */);
    715     }
    716 
    717 }
    718 static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
    719     struct __anonymous15 _X4_retS13__anonymous15_1;
    720     {
    721         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1));
    722     }
    723 
    724     {
    725         ((void)_X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1((&_X4_retS13__anonymous15_1), (*_X4_dstS13__anonymous15_1)));
    726     }
    727 
    728     return _X4_retS13__anonymous15_1;
    729 }
    730 static inline void _X12_constructorFv_S13__anonymous15s_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed short int _X1is_1){
    731     {
    732         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X1is_1) /* ?{} */);
    733     }
    734 
    735 }
    736 static volatile const struct __anonymous15 _X3x36KVS13__anonymous15_1;
     646static volatile const struct __anonymous13 _X3x35KVS13__anonymous13_1;
    737647_Thread_local signed int _X3x37i_1;
    738648__thread signed int _X3x38i_1;
     
    753663static inline volatile const signed short int _X3f27Fs___1();
    754664static inline volatile const signed short int _X3f28Fs___1();
     665struct __anonymous14 {
     666    signed int _X1ii_1;
     667};
     668static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1);
     669static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1);
     670static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1);
     671static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1);
     672static inline void _X12_constructorFv_S13__anonymous14i_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed int _X1ii_1);
     673static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
     674    {
     675        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1) /* ?{} */);
     676    }
     677
     678}
     679static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
     680    {
     681        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1=_X4_srcS13__anonymous14_1._X1ii_1) /* ?{} */);
     682    }
     683
     684}
     685static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
     686    {
     687        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1) /* ^?{} */);
     688    }
     689
     690}
     691static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
     692    struct __anonymous14 _X4_retS13__anonymous14_1;
     693    {
     694        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1=_X4_srcS13__anonymous14_1._X1ii_1));
     695    }
     696
     697    {
     698        ((void)_X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1((&_X4_retS13__anonymous14_1), (*_X4_dstS13__anonymous14_1)));
     699    }
     700
     701    return _X4_retS13__anonymous14_1;
     702}
     703static inline void _X12_constructorFv_S13__anonymous14i_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed int _X1ii_1){
     704    {
     705        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1=_X1ii_1) /* ?{} */);
     706    }
     707
     708}
     709static inline volatile const struct __anonymous14 _X3f31FS13__anonymous14___1();
     710struct __anonymous15 {
     711    signed int _X1ii_1;
     712};
     713static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1);
     714static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1);
     715static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1);
     716static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1);
     717static inline void _X12_constructorFv_S13__anonymous15i_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed int _X1ii_1);
     718static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
     719    {
     720        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1) /* ?{} */);
     721    }
     722
     723}
     724static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
     725    {
     726        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1=_X4_srcS13__anonymous15_1._X1ii_1) /* ?{} */);
     727    }
     728
     729}
     730static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
     731    {
     732        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1) /* ^?{} */);
     733    }
     734
     735}
     736static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
     737    struct __anonymous15 _X4_retS13__anonymous15_1;
     738    {
     739        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1=_X4_srcS13__anonymous15_1._X1ii_1));
     740    }
     741
     742    {
     743        ((void)_X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1((&_X4_retS13__anonymous15_1), (*_X4_dstS13__anonymous15_1)));
     744    }
     745
     746    return _X4_retS13__anonymous15_1;
     747}
     748static inline void _X12_constructorFv_S13__anonymous15i_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed int _X1ii_1){
     749    {
     750        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1=_X1ii_1) /* ?{} */);
     751    }
     752
     753}
     754static inline volatile const struct __anonymous15 _X3f32FS13__anonymous15___1();
    755755struct __anonymous16 {
    756756    signed int _X1ii_1;
     
    797797
    798798}
    799 static inline volatile const struct __anonymous16 _X3f31FS13__anonymous16___1();
     799static inline volatile const struct __anonymous16 _X3f33FS13__anonymous16___1();
    800800struct __anonymous17 {
    801801    signed int _X1ii_1;
     
    842842
    843843}
    844 static inline volatile const struct __anonymous17 _X3f32FS13__anonymous17___1();
     844static inline volatile const struct __anonymous17 _X3f34FS13__anonymous17___1();
    845845struct __anonymous18 {
    846846    signed int _X1ii_1;
     
    887887
    888888}
    889 static inline volatile const struct __anonymous18 _X3f33FS13__anonymous18___1();
     889static inline volatile const struct __anonymous18 _X3f35FS13__anonymous18___1();
    890890struct __anonymous19 {
    891891    signed int _X1ii_1;
     
    932932
    933933}
    934 static inline volatile const struct __anonymous19 _X3f34FS13__anonymous19___1();
     934static inline volatile const struct __anonymous19 _X3f36FS13__anonymous19___1();
    935935struct __anonymous20 {
    936936    signed int _X1ii_1;
     
    977977
    978978}
    979 static inline volatile const struct __anonymous20 _X3f35FS13__anonymous20___1();
     979static inline volatile const struct __anonymous20 _X3f37FS13__anonymous20___1();
    980980struct __anonymous21 {
    981981    signed int _X1ii_1;
     
    10221022
    10231023}
    1024 static inline volatile const struct __anonymous21 _X3f36FS13__anonymous21___1();
    1025 struct __anonymous22 {
    1026     signed int _X1ii_1;
    1027 };
    1028 static inline void _X12_constructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1);
    1029 static inline void _X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1);
    1030 static inline void _X11_destructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1);
    1031 static inline struct __anonymous22 _X16_operator_assignFS13__anonymous22_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1);
    1032 static inline void _X12_constructorFv_S13__anonymous22i_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, signed int _X1ii_1);
    1033 static inline void _X12_constructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1){
    1034     {
    1035         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ?{} */);
    1036     }
    1037 
    1038 }
    1039 static inline void _X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1){
    1040     {
    1041         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1) /* ?{} */);
    1042     }
    1043 
    1044 }
    1045 static inline void _X11_destructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1){
    1046     {
    1047         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ^?{} */);
    1048     }
    1049 
    1050 }
    1051 static inline struct __anonymous22 _X16_operator_assignFS13__anonymous22_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1){
    1052     struct __anonymous22 _X4_retS13__anonymous22_1;
    1053     {
    1054         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1));
    1055     }
    1056 
    1057     {
    1058         ((void)_X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1((&_X4_retS13__anonymous22_1), (*_X4_dstS13__anonymous22_1)));
    1059     }
    1060 
    1061     return _X4_retS13__anonymous22_1;
    1062 }
    1063 static inline void _X12_constructorFv_S13__anonymous22i_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, signed int _X1ii_1){
    1064     {
    1065         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X1ii_1) /* ?{} */);
    1066     }
    1067 
    1068 }
    1069 static inline volatile const struct __anonymous22 _X3f37FS13__anonymous22___1();
    1070 struct __anonymous23 {
    1071     signed int _X1ii_1;
    1072 };
    1073 static inline void _X12_constructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1);
    1074 static inline void _X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1);
    1075 static inline void _X11_destructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1);
    1076 static inline struct __anonymous23 _X16_operator_assignFS13__anonymous23_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1);
    1077 static inline void _X12_constructorFv_S13__anonymous23i_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, signed int _X1ii_1);
    1078 static inline void _X12_constructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1){
    1079     {
    1080         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ?{} */);
    1081     }
    1082 
    1083 }
    1084 static inline void _X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1){
    1085     {
    1086         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1) /* ?{} */);
    1087     }
    1088 
    1089 }
    1090 static inline void _X11_destructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1){
    1091     {
    1092         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ^?{} */);
    1093     }
    1094 
    1095 }
    1096 static inline struct __anonymous23 _X16_operator_assignFS13__anonymous23_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1){
    1097     struct __anonymous23 _X4_retS13__anonymous23_1;
    1098     {
    1099         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1));
    1100     }
    1101 
    1102     {
    1103         ((void)_X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1((&_X4_retS13__anonymous23_1), (*_X4_dstS13__anonymous23_1)));
    1104     }
    1105 
    1106     return _X4_retS13__anonymous23_1;
    1107 }
    1108 static inline void _X12_constructorFv_S13__anonymous23i_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, signed int _X1ii_1){
    1109     {
    1110         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X1ii_1) /* ?{} */);
    1111     }
    1112 
    1113 }
    1114 static inline volatile const struct __anonymous23 _X3f38FS13__anonymous23___1();
     1024static inline volatile const struct __anonymous21 _X3f38FS13__anonymous21___1();
    11151025static inline volatile const signed short int _X3f41Fs___1();
    11161026static inline volatile const signed short int _X3f42Fs___1();
  • tests/.expect/declarationSpecifier.x86.txt

    rce44c5f rd964c39  
    5151
    5252}
    53 volatile const struct __anonymous0 _X3x10KVS12__anonymous0_1;
     53static volatile const struct __anonymous0 _X3x10KVS12__anonymous0_1;
    5454struct __anonymous1 {
    5555    signed int _X1ii_1;
     
    9696
    9797}
    98 volatile const struct __anonymous1 _X3x11KVS12__anonymous1_1;
     98static volatile const struct __anonymous1 _X3x11KVS12__anonymous1_1;
    9999struct __anonymous2 {
    100100    signed int _X1ii_1;
     
    141141
    142142}
    143 volatile const struct __anonymous2 _X3x12KVS12__anonymous2_1;
     143static volatile const struct __anonymous2 _X3x12KVS12__anonymous2_1;
    144144struct __anonymous3 {
    145145    signed int _X1ii_1;
     
    322322}
    323323static volatile const struct __anonymous6 _X3x16KVS12__anonymous6_1;
    324 struct __anonymous7 {
    325     signed int _X1ii_1;
    326 };
    327 static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1);
    328 static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1);
    329 static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1);
    330 static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1);
    331 static inline void _X12_constructorFv_S12__anonymous7i_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed int _X1ii_1);
    332 static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
    333     {
    334         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ?{} */);
    335     }
    336 
    337 }
    338 static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
    339     {
    340         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1) /* ?{} */);
    341     }
    342 
    343 }
    344 static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
    345     {
    346         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ^?{} */);
    347     }
    348 
    349 }
    350 static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
    351     struct __anonymous7 _X4_retS12__anonymous7_1;
    352     {
    353         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1));
    354     }
    355 
    356     {
    357         ((void)_X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1((&_X4_retS12__anonymous7_1), (*_X4_dstS12__anonymous7_1)));
    358     }
    359 
    360     return _X4_retS12__anonymous7_1;
    361 }
    362 static inline void _X12_constructorFv_S12__anonymous7i_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed int _X1ii_1){
    363     {
    364         ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X1ii_1) /* ?{} */);
    365     }
    366 
    367 }
    368 static volatile const struct __anonymous7 _X3x17KVS12__anonymous7_1;
    369324volatile const signed short int _X3x20KVs_1;
    370325static volatile const signed short int _X3x21KVs_1;
     
    375330static volatile const signed short int _X3x26KVs_1;
    376331static volatile const signed short int _X3x27KVs_1;
     332struct __anonymous7 {
     333    signed short int _X1is_1;
     334};
     335static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1);
     336static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1);
     337static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1);
     338static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1);
     339static inline void _X12_constructorFv_S12__anonymous7s_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed short int _X1is_1);
     340static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
     341    {
     342        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1) /* ?{} */);
     343    }
     344
     345}
     346static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
     347    {
     348        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1=_X4_srcS12__anonymous7_1._X1is_1) /* ?{} */);
     349    }
     350
     351}
     352static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
     353    {
     354        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1) /* ^?{} */);
     355    }
     356
     357}
     358static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
     359    struct __anonymous7 _X4_retS12__anonymous7_1;
     360    {
     361        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1=_X4_srcS12__anonymous7_1._X1is_1));
     362    }
     363
     364    {
     365        ((void)_X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1((&_X4_retS12__anonymous7_1), (*_X4_dstS12__anonymous7_1)));
     366    }
     367
     368    return _X4_retS12__anonymous7_1;
     369}
     370static inline void _X12_constructorFv_S12__anonymous7s_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed short int _X1is_1){
     371    {
     372        ((void)((*_X4_dstS12__anonymous7_1)._X1is_1=_X1is_1) /* ?{} */);
     373    }
     374
     375}
     376static volatile const struct __anonymous7 _X3x29KVS12__anonymous7_1;
    377377struct __anonymous8 {
    378378    signed short int _X1is_1;
     
    419419
    420420}
    421 volatile const struct __anonymous8 _X3x29KVS12__anonymous8_1;
     421static volatile const struct __anonymous8 _X3x30KVS12__anonymous8_1;
    422422struct __anonymous9 {
    423423    signed short int _X1is_1;
     
    464464
    465465}
    466 volatile const struct __anonymous9 _X3x30KVS12__anonymous9_1;
     466static volatile const struct __anonymous9 _X3x31KVS12__anonymous9_1;
    467467struct __anonymous10 {
    468468    signed short int _X1is_1;
     
    509509
    510510}
    511 volatile const struct __anonymous10 _X3x31KVS13__anonymous10_1;
     511static volatile const struct __anonymous10 _X3x32KVS13__anonymous10_1;
    512512struct __anonymous11 {
    513513    signed short int _X1is_1;
     
    554554
    555555}
    556 static volatile const struct __anonymous11 _X3x32KVS13__anonymous11_1;
     556static volatile const struct __anonymous11 _X3x33KVS13__anonymous11_1;
    557557struct __anonymous12 {
    558558    signed short int _X1is_1;
     
    599599
    600600}
    601 static volatile const struct __anonymous12 _X3x33KVS13__anonymous12_1;
     601static volatile const struct __anonymous12 _X3x34KVS13__anonymous12_1;
    602602struct __anonymous13 {
    603603    signed short int _X1is_1;
     
    644644
    645645}
    646 static volatile const struct __anonymous13 _X3x34KVS13__anonymous13_1;
    647 struct __anonymous14 {
    648     signed short int _X1is_1;
    649 };
    650 static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1);
    651 static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1);
    652 static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1);
    653 static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1);
    654 static inline void _X12_constructorFv_S13__anonymous14s_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed short int _X1is_1);
    655 static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
    656     {
    657         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ?{} */);
    658     }
    659 
    660 }
    661 static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
    662     {
    663         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1) /* ?{} */);
    664     }
    665 
    666 }
    667 static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
    668     {
    669         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ^?{} */);
    670     }
    671 
    672 }
    673 static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
    674     struct __anonymous14 _X4_retS13__anonymous14_1;
    675     {
    676         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1));
    677     }
    678 
    679     {
    680         ((void)_X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1((&_X4_retS13__anonymous14_1), (*_X4_dstS13__anonymous14_1)));
    681     }
    682 
    683     return _X4_retS13__anonymous14_1;
    684 }
    685 static inline void _X12_constructorFv_S13__anonymous14s_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed short int _X1is_1){
    686     {
    687         ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X1is_1) /* ?{} */);
    688     }
    689 
    690 }
    691 static volatile const struct __anonymous14 _X3x35KVS13__anonymous14_1;
    692 struct __anonymous15 {
    693     signed short int _X1is_1;
    694 };
    695 static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1);
    696 static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1);
    697 static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1);
    698 static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1);
    699 static inline void _X12_constructorFv_S13__anonymous15s_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed short int _X1is_1);
    700 static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
    701     {
    702         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ?{} */);
    703     }
    704 
    705 }
    706 static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
    707     {
    708         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1) /* ?{} */);
    709     }
    710 
    711 }
    712 static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
    713     {
    714         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ^?{} */);
    715     }
    716 
    717 }
    718 static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
    719     struct __anonymous15 _X4_retS13__anonymous15_1;
    720     {
    721         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1));
    722     }
    723 
    724     {
    725         ((void)_X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1((&_X4_retS13__anonymous15_1), (*_X4_dstS13__anonymous15_1)));
    726     }
    727 
    728     return _X4_retS13__anonymous15_1;
    729 }
    730 static inline void _X12_constructorFv_S13__anonymous15s_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed short int _X1is_1){
    731     {
    732         ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X1is_1) /* ?{} */);
    733     }
    734 
    735 }
    736 static volatile const struct __anonymous15 _X3x36KVS13__anonymous15_1;
     646static volatile const struct __anonymous13 _X3x35KVS13__anonymous13_1;
    737647_Thread_local signed int _X3x37i_1;
    738648__thread signed int _X3x38i_1;
     
    753663static inline volatile const signed short int _X3f27Fs___1();
    754664static inline volatile const signed short int _X3f28Fs___1();
     665struct __anonymous14 {
     666    signed int _X1ii_1;
     667};
     668static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1);
     669static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1);
     670static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1);
     671static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1);
     672static inline void _X12_constructorFv_S13__anonymous14i_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed int _X1ii_1);
     673static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
     674    {
     675        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1) /* ?{} */);
     676    }
     677
     678}
     679static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
     680    {
     681        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1=_X4_srcS13__anonymous14_1._X1ii_1) /* ?{} */);
     682    }
     683
     684}
     685static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
     686    {
     687        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1) /* ^?{} */);
     688    }
     689
     690}
     691static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
     692    struct __anonymous14 _X4_retS13__anonymous14_1;
     693    {
     694        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1=_X4_srcS13__anonymous14_1._X1ii_1));
     695    }
     696
     697    {
     698        ((void)_X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1((&_X4_retS13__anonymous14_1), (*_X4_dstS13__anonymous14_1)));
     699    }
     700
     701    return _X4_retS13__anonymous14_1;
     702}
     703static inline void _X12_constructorFv_S13__anonymous14i_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed int _X1ii_1){
     704    {
     705        ((void)((*_X4_dstS13__anonymous14_1)._X1ii_1=_X1ii_1) /* ?{} */);
     706    }
     707
     708}
     709static inline volatile const struct __anonymous14 _X3f31FS13__anonymous14___1();
     710struct __anonymous15 {
     711    signed int _X1ii_1;
     712};
     713static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1);
     714static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1);
     715static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1);
     716static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1);
     717static inline void _X12_constructorFv_S13__anonymous15i_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed int _X1ii_1);
     718static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
     719    {
     720        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1) /* ?{} */);
     721    }
     722
     723}
     724static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
     725    {
     726        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1=_X4_srcS13__anonymous15_1._X1ii_1) /* ?{} */);
     727    }
     728
     729}
     730static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
     731    {
     732        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1) /* ^?{} */);
     733    }
     734
     735}
     736static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
     737    struct __anonymous15 _X4_retS13__anonymous15_1;
     738    {
     739        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1=_X4_srcS13__anonymous15_1._X1ii_1));
     740    }
     741
     742    {
     743        ((void)_X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1((&_X4_retS13__anonymous15_1), (*_X4_dstS13__anonymous15_1)));
     744    }
     745
     746    return _X4_retS13__anonymous15_1;
     747}
     748static inline void _X12_constructorFv_S13__anonymous15i_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed int _X1ii_1){
     749    {
     750        ((void)((*_X4_dstS13__anonymous15_1)._X1ii_1=_X1ii_1) /* ?{} */);
     751    }
     752
     753}
     754static inline volatile const struct __anonymous15 _X3f32FS13__anonymous15___1();
    755755struct __anonymous16 {
    756756    signed int _X1ii_1;
     
    797797
    798798}
    799 static inline volatile const struct __anonymous16 _X3f31FS13__anonymous16___1();
     799static inline volatile const struct __anonymous16 _X3f33FS13__anonymous16___1();
    800800struct __anonymous17 {
    801801    signed int _X1ii_1;
     
    842842
    843843}
    844 static inline volatile const struct __anonymous17 _X3f32FS13__anonymous17___1();
     844static inline volatile const struct __anonymous17 _X3f34FS13__anonymous17___1();
    845845struct __anonymous18 {
    846846    signed int _X1ii_1;
     
    887887
    888888}
    889 static inline volatile const struct __anonymous18 _X3f33FS13__anonymous18___1();
     889static inline volatile const struct __anonymous18 _X3f35FS13__anonymous18___1();
    890890struct __anonymous19 {
    891891    signed int _X1ii_1;
     
    932932
    933933}
    934 static inline volatile const struct __anonymous19 _X3f34FS13__anonymous19___1();
     934static inline volatile const struct __anonymous19 _X3f36FS13__anonymous19___1();
    935935struct __anonymous20 {
    936936    signed int _X1ii_1;
     
    977977
    978978}
    979 static inline volatile const struct __anonymous20 _X3f35FS13__anonymous20___1();
     979static inline volatile const struct __anonymous20 _X3f37FS13__anonymous20___1();
    980980struct __anonymous21 {
    981981    signed int _X1ii_1;
     
    10221022
    10231023}
    1024 static inline volatile const struct __anonymous21 _X3f36FS13__anonymous21___1();
    1025 struct __anonymous22 {
    1026     signed int _X1ii_1;
    1027 };
    1028 static inline void _X12_constructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1);
    1029 static inline void _X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1);
    1030 static inline void _X11_destructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1);
    1031 static inline struct __anonymous22 _X16_operator_assignFS13__anonymous22_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1);
    1032 static inline void _X12_constructorFv_S13__anonymous22i_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, signed int _X1ii_1);
    1033 static inline void _X12_constructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1){
    1034     {
    1035         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ?{} */);
    1036     }
    1037 
    1038 }
    1039 static inline void _X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1){
    1040     {
    1041         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1) /* ?{} */);
    1042     }
    1043 
    1044 }
    1045 static inline void _X11_destructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1){
    1046     {
    1047         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ^?{} */);
    1048     }
    1049 
    1050 }
    1051 static inline struct __anonymous22 _X16_operator_assignFS13__anonymous22_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1){
    1052     struct __anonymous22 _X4_retS13__anonymous22_1;
    1053     {
    1054         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1));
    1055     }
    1056 
    1057     {
    1058         ((void)_X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1((&_X4_retS13__anonymous22_1), (*_X4_dstS13__anonymous22_1)));
    1059     }
    1060 
    1061     return _X4_retS13__anonymous22_1;
    1062 }
    1063 static inline void _X12_constructorFv_S13__anonymous22i_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, signed int _X1ii_1){
    1064     {
    1065         ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X1ii_1) /* ?{} */);
    1066     }
    1067 
    1068 }
    1069 static inline volatile const struct __anonymous22 _X3f37FS13__anonymous22___1();
    1070 struct __anonymous23 {
    1071     signed int _X1ii_1;
    1072 };
    1073 static inline void _X12_constructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1);
    1074 static inline void _X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1);
    1075 static inline void _X11_destructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1);
    1076 static inline struct __anonymous23 _X16_operator_assignFS13__anonymous23_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1);
    1077 static inline void _X12_constructorFv_S13__anonymous23i_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, signed int _X1ii_1);
    1078 static inline void _X12_constructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1){
    1079     {
    1080         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ?{} */);
    1081     }
    1082 
    1083 }
    1084 static inline void _X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1){
    1085     {
    1086         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1) /* ?{} */);
    1087     }
    1088 
    1089 }
    1090 static inline void _X11_destructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1){
    1091     {
    1092         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ^?{} */);
    1093     }
    1094 
    1095 }
    1096 static inline struct __anonymous23 _X16_operator_assignFS13__anonymous23_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1){
    1097     struct __anonymous23 _X4_retS13__anonymous23_1;
    1098     {
    1099         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1));
    1100     }
    1101 
    1102     {
    1103         ((void)_X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1((&_X4_retS13__anonymous23_1), (*_X4_dstS13__anonymous23_1)));
    1104     }
    1105 
    1106     return _X4_retS13__anonymous23_1;
    1107 }
    1108 static inline void _X12_constructorFv_S13__anonymous23i_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, signed int _X1ii_1){
    1109     {
    1110         ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X1ii_1) /* ?{} */);
    1111     }
    1112 
    1113 }
    1114 static inline volatile const struct __anonymous23 _X3f38FS13__anonymous23___1();
     1024static inline volatile const struct __anonymous21 _X3f38FS13__anonymous21___1();
    11151025static inline volatile const signed short int _X3f41Fs___1();
    11161026static inline volatile const signed short int _X3f42Fs___1();
  • tests/attributes.cfa

    rce44c5f rd964c39  
    1010// Created On       : Mon Feb  6 16:07:02 2017
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Mon Mar 15 13:53:31 2021
    13 // Update Count     : 38
     12// Last Modified On : Thu Feb 23 20:33:07 2023
     13// Update Count     : 39
    1414//
    1515
     
    2222
    2323// aggregate_name
    24 struct __attribute__(( unused )) {} Dummy;
     24static struct __attribute__(( unused )) {} Dummy;
    2525struct __attribute__(( unused )) Agn1;
    2626struct __attribute__(( unused )) Agn2 {};
  • tests/avltree/avl.h

    rce44c5f rd964c39  
    99// #include <lib.h>
    1010
    11 trait Comparable(T) {
     11forall(T)
     12trait Comparable {
    1213  int ?<?(T, T);
    1314};
  • tests/concurrent/signal/disjoint.cfa

    rce44c5f rd964c39  
    3838
    3939// Use a global struct because the order needs to match with Signaller thread
    40 struct {
     40static struct {
    4141        global_t mut;
    4242        global_data_t data;
  • tests/declarationSpecifier.cfa

    rce44c5f rd964c39  
    1010// Created On       : Wed Aug 17 08:21:04 2016
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Tue Apr 30 18:20:36 2019
    13 // Update Count     : 4
     12// Last Modified On : Thu Feb 23 20:53:31 2023
     13// Update Count     : 8
    1414//
    1515
     
    2525short int volatile static const x8;
    2626
    27 const volatile struct { int i; } x10;
    28 const struct { int i; } volatile x11;
    29 struct { int i; } const volatile x12;
    30 static const volatile struct { int i; } x13;
    31 const static struct { int i; } volatile x14;
    32 struct { int i; } static const volatile x15;
    33 struct { int i; } const static volatile x16;
    34 struct { int i; } const volatile static x17;
     27static const volatile struct { int i; } x10;
     28static const struct { int i; } volatile x11;
     29static struct { int i; } const volatile x12;
     30const static struct { int i; } volatile x13;
     31struct { int i; } static const volatile x14;
     32struct { int i; } const static volatile x15;
     33struct { int i; } const volatile static x16;
    3534
    3635const Int volatile x20;
     
    4342Int volatile static const x27;
    4443
    45 const volatile struct { Int i; } x29;
    46 const struct { Int i; } volatile x30;
    47 struct { Int i; } const volatile x31;
    48 static const volatile struct { Int i; } x32;
    49 const static struct { Int i; } volatile x33;
    50 struct { Int i; } static const volatile x34;
    51 struct { Int i; } const static volatile x35;
    52 struct { Int i; } const volatile static x36;
     44static const volatile struct { Int i; } x29;
     45static const struct { Int i; } volatile x30;
     46static struct { Int i; } const volatile x31;
     47const static struct { Int i; } volatile x32;
     48struct { Int i; } static const volatile x33;
     49struct { Int i; } const static volatile x34;
     50struct { Int i; } const volatile static x35;
    5351
    5452_Thread_local int x37;
  • tests/forall.cfa

    rce44c5f rd964c39  
    1010// Created On       : Wed May  9 08:48:15 2018
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Sun Feb  5 07:54:43 2023
    13 // Update Count     : 90
     12// Last Modified On : Thu Feb 23 20:29:59 2023
     13// Update Count     : 91
    1414//
    1515
     
    195195
    196196forall( T ) struct S { T t; } (int) x, y, z;
    197 forall( T ) struct { T t; } (int) a, b, c;
     197static forall( T ) struct { T t; } (int) a, b, c;
    198198
    199199forall( T ) static forall( S ) {
  • tests/function-operator.cfa

    rce44c5f rd964c39  
    1010// Created On       : Fri Aug 25 15:21:11 2017
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Apr 11 18:27:45 2019
    13 // Update Count     : 10
     12// Last Modified On : Sat Feb 25 07:26:10 2023
     13// Update Count     : 12
    1414//
    1515
     
    2222
    2323// STL-like Algorithms
    24 trait Assignable(T &, U &) { T ?=?(T &, U); };
    25 trait Copyable(T &) { void ?{}(T &, T); };
    26 trait Destructable(T &) { void ^?{}(T &); };
     24forall(T &, U &)
     25trait Assignable { T ?=?(T &, U); };
     26forall(T &)
     27trait Copyable { void ?{}(T &, T); };
     28forall(T &)
     29trait Destructable { void ^?{}(T &); };
    2730
    2831trait Iterator(iter & | sized(iter) | Copyable(iter) | Destructable(iter), T) {
  • tests/include/includes.cfa

    rce44c5f rd964c39  
    1010// Created On       : Wed May 27 17:56:53 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Mon Feb 20 21:51:04 2023
    13 // Update Count     : 780
     12// Last Modified On : Wed Feb 22 10:16:58 2023
     13// Update Count     : 811
    1414//
    1515
     
    9797#include <ncurses_dll.h>                                                                // may not be installed, comes with ncurses
    9898#endif
    99 #include <netdb.h>
     99//#include <netdb.h>
    100100#include <nl_types.h>
    101101#include <nss.h>
     
    111111#include <pwd.h>
    112112#include <regex.h>
    113 #include <resolv.h>
     113//#include <resolv.h>
    114114#include <re_comp.h>
    115115#include <sched.h>
     
    170170#endif // __CFA__
    171171
    172 int main( int argc, char const * argv[] ) {
     172int main() {
    173173    #pragma GCC warning "Compiled"                                                      // force non-empty .expect file, NO TABS!!!
    174174}
  • tests/io/comp_basic.cfa

    rce44c5f rd964c39  
    2626#include <unistd.h>
    2727
    28 struct {
     28static struct {
    2929        barrier & bar;
    3030        int pipe[2];
    31 
    3231} globals;
    3332
  • tests/io/comp_fair.cfa

    rce44c5f rd964c39  
    2626#include <unistd.h>
    2727
    28 struct {
     28static struct {
    2929        barrier & bar;
    3030        int pipe[2];
  • tests/quotedKeyword.cfa

    rce44c5f rd964c39  
    1010// Created On       : Wed May 27 17:56:53 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Fri Feb  7 19:07:07 2020
    13 // Update Count     : 25
     12// Last Modified On : Thu Feb 23 20:31:05 2023
     13// Update Count     : 26
    1414//
    1515
    1616#include <fstream.hfa>
    1717
    18 struct {
     18static struct {
    1919        int ``otype;
    2020        int ``struct;
  • tests/sum.cfa

    rce44c5f rd964c39  
    1111// Created On       : Wed May 27 17:56:53 2015
    1212// Last Modified By : Peter A. Buhr
    13 // Last Modified On : Thu Aug  5 21:27:25 2021
    14 // Update Count     : 346
     13// Last Modified On : Fri Feb 24 22:52:12 2023
     14// Update Count     : 347
    1515//
    1616
     
    1818#include <stdlib.hfa>
    1919
    20 trait sumable( T ) {
     20forall( T )
     21trait sumable {
    2122        void ?{}( T &, zero_t );                                                        // 0 literal constructor
    2223        void ?{}( T &, one_t );                                                         // 1 literal constructor
Note: See TracChangeset for help on using the changeset viewer.