Changes in / [610194e:825170d]
- Location:
- src/Parser
- Files:
-
- 4 edited
-
TypeData.cc (modified) (5 diffs)
-
TypeData.h (modified) (5 diffs)
-
TypedefTable.cc (modified) (2 diffs)
-
parser.yy (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/TypeData.cc
r610194e r825170d 10 10 // Created On : Sat May 16 15:12:51 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Jul 12 13:52:09201813 // Update Count : 60 612 // Last Modified On : Wed Jun 6 17:40:33 2018 13 // Update Count : 604 14 14 // 15 15 … … 76 76 aggregate.parent = nullptr; 77 77 aggregate.anon = false; 78 aggregate.inLine = false;79 78 break; 80 79 case AggregateInst: … … 82 81 aggInst.aggregate = nullptr; 83 82 aggInst.params = nullptr; 84 aggInst.hoistType = false; 85 aggInst.inLine = false; 83 aggInst.hoistType = false;; 86 84 break; 87 85 case Symbolic: … … 221 219 newtype->aggregate.body = aggregate.body; 222 220 newtype->aggregate.anon = aggregate.anon; 223 newtype->aggregate.inLine = aggregate.inLine;224 221 newtype->aggregate.tagged = aggregate.tagged; 225 222 newtype->aggregate.parent = aggregate.parent ? new string( *aggregate.parent ) : nullptr; … … 229 226 newtype->aggInst.params = maybeClone( aggInst.params ); 230 227 newtype->aggInst.hoistType = aggInst.hoistType; 231 newtype->aggInst.inLine = aggInst.inLine;232 228 break; 233 229 case Enum: -
src/Parser/TypeData.h
r610194e r825170d 10 10 // Created On : Sat May 16 15:18:36 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Jul 12 14:00:09201813 // Update Count : 19 312 // Last Modified On : Thu Feb 22 15:21:23 2018 13 // Update Count : 191 14 14 // 15 15 … … 37 37 bool body; 38 38 bool anon; 39 bool inLine;40 39 41 40 bool tagged; … … 47 46 ExpressionNode * params; 48 47 bool hoistType; 49 bool inLine;50 48 }; 51 49 … … 68 66 mutable DeclarationNode * oldDeclList; 69 67 StatementNode * body; 70 ExpressionNode * withExprs; // expressions from function's with_clause68 ExpressionNode * withExprs; // expressions from function's with_clause 71 69 }; 72 70 … … 130 128 TupleType * buildTuple( const TypeData * ); 131 129 TypeofType * buildTypeof( const TypeData * ); 132 Declaration * buildDecl( const TypeData *, const std::string &, Type::StorageClasses, Expression *, Type::FuncSpecifiers funcSpec, LinkageSpec::Spec, Expression * asmName, 133 Initializer * init = nullptr, std::list< class Attribute * > attributes = std::list< class Attribute * >() ); 130 Declaration * buildDecl( const TypeData *, const std::string &, Type::StorageClasses, Expression *, Type::FuncSpecifiers funcSpec, LinkageSpec::Spec, Expression * asmName, Initializer * init = nullptr, std::list< class Attribute * > attributes = std::list< class Attribute * >() ); 134 131 FunctionType * buildFunction( const TypeData * ); 135 132 void buildKRFunction( const TypeData::Function_t & function ); -
src/Parser/TypedefTable.cc
r610194e r825170d 5 5 // file "LICENCE" distributed with Cforall. 6 6 // 7 // TypedefTable.cc -- 7 // TypedefTable.cc -- 8 8 // 9 9 // Author : Peter A. Buhr … … 100 100 void TypedefTable::up( bool forall ) { 101 101 level += 1; 102 kindTable.getNote( kindTable.currentScope() ) = (Note){ level, static_cast<bool>(forall | getEnclForall()) };102 kindTable.getNote( kindTable.currentScope() ) = (Note){ level, forall | getEnclForall() }; 103 103 debugPrint( cerr << "Up " << " level " << level << " note " << kindTable.getNote( level ).level << ", " << kindTable.getNote( level ).forall << endl; ); 104 104 } // TypedefTable::up -
src/Parser/parser.yy
r610194e r825170d 10 10 // Created On : Sat Sep 1 20:22:55 2001 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Jul 12 13:47:44 201813 // Update Count : 37 5512 // Last Modified On : Wed Jul 11 11:55:24 2018 13 // Update Count : 3739 14 14 // 15 15 … … 1936 1936 | EXTENSION type_specifier field_declaring_list ';' // GCC 1937 1937 { distExt( $3 ); $$ = distAttr( $2, $3 ); } // mark all fields in list 1938 | INLINE type_specifier field_declaring_list ';' // CFA1939 {1940 if ( $2->type && ( $2->type->kind == TypeData::Aggregate || $2->type->kind == TypeData::AggregateInst ) ) {1941 if ( $2->type->kind == TypeData::Aggregate ) {1942 $2->type->aggregate.inLine = true;1943 } else {1944 $2->type->aggInst.inLine = true;1945 } // if1946 $$ = distAttr( $2, $3 );1947 } else {1948 SemanticError( yylloc, "inline qualifier only allowed for aggregate field declarations." ); $$ = nullptr;1949 } // if1950 }1951 1938 | typedef_declaration ';' // CFA 1952 1939 | cfa_field_declaring_list ';' // CFA, new style field declaration
Note:
See TracChangeset
for help on using the changeset viewer.