Ignore:
Timestamp:
Nov 27, 2017, 2:38:37 PM (7 years ago)
Author:
Rob Schluntz <rschlunt@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
Children:
c029f4d
Parents:
a7caf3d
Message:

Carry attributes through typedefs

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/TypeData.cc

    ra7caf3d r1f370451  
    792792
    793793
    794 NamedTypeDecl * buildSymbolic( const TypeData * td, const string & name, Type::StorageClasses scs, LinkageSpec::Spec linkage ) {
     794NamedTypeDecl * buildSymbolic( const TypeData * td, std::list< Attribute * > attributes, const string & name, Type::StorageClasses scs, LinkageSpec::Spec linkage ) {
    795795        assert( td->kind == TypeData::Symbolic );
    796796        NamedTypeDecl * ret;
     
    803803        buildList( td->symbolic.params, ret->get_parameters() );
    804804        buildList( td->symbolic.assertions, ret->get_assertions() );
     805        ret->base->attributes.splice( ret->base->attributes.end(), attributes );
    805806        return ret;
    806807} // buildSymbolic
     
    866867                return buildEnum( td, attributes, linkage );
    867868        } else if ( td->kind == TypeData::Symbolic ) {
    868                 return buildSymbolic( td, name, scs, linkage );
     869                return buildSymbolic( td, attributes, name, scs, linkage );
    869870        } else {
    870871                return (new ObjectDecl( name, scs, linkage, bitfieldWidth, typebuild( td ), init, attributes ))->set_asmName( asmName );
Note: See TracChangeset for help on using the changeset viewer.