Changes in src/CodeGen/CodeGenerator.cc [064e3ff:486341f]
- File:
-
- 1 edited
-
src/CodeGen/CodeGenerator.cc (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/CodeGen/CodeGenerator.cc
r064e3ff r486341f 83 83 } 84 84 85 CodeGenerator::CodeGenerator( std::ostream & os ) : indent( *this), cur_indent( 0 ), insideFunction( false ), output( os ), printLabels( *this) {}85 CodeGenerator::CodeGenerator( std::ostream & os, bool mangle ) : indent( *this), cur_indent( 0 ), insideFunction( false ), output( os ), printLabels( *this ), mangle( mangle ) {} 86 86 87 87 CodeGenerator::CodeGenerator( std::ostream & os, std::string init, int indentation, bool infunp ) … … 95 95 } 96 96 97 string mangleName( DeclarationWithType * decl ) { 97 string CodeGenerator::mangleName( DeclarationWithType * decl ) { 98 if ( ! mangle ) return decl->get_name(); 98 99 if ( decl->get_mangleName() != "" ) { 99 100 // need to incorporate scope level in order to differentiate names for destructors … … 148 149 void CodeGenerator::visit( ObjectDecl * objectDecl ) { 149 150 extension( objectDecl ); 151 genAttributes( objectDecl->get_attributes() ); 152 150 153 handleStorageClass( objectDecl ); 151 154 output << genType( objectDecl->get_type(), mangleName( objectDecl ) ); … … 271 274 printDesignators( init->get_designators() ); 272 275 output << "{ "; 273 if ( init->begin _initializers() == init->end_initializers() ) {276 if ( init->begin() == init->end() ) { 274 277 // illegal to leave initializer list empty for scalar initializers, but always legal to have 0 275 278 output << "0"; 276 279 } else { 277 genCommaList( init->begin _initializers(), init->end_initializers() );280 genCommaList( init->begin(), init->end() ); 278 281 } // if 279 282 output << " }"; … … 309 312 Type * type = InitTweak::getPointerBase( (*arg)->get_results().front() ); 310 313 assert( type ); 311 newExpr->get_results().push_back( type );314 newExpr->get_results().push_back( type->clone() ); 312 315 *arg = newExpr; 313 316 } // if
Note:
See TracChangeset
for help on using the changeset viewer.