Changeset a8367eb
- Timestamp:
- Sep 16, 2021, 2:21:12 PM (3 years ago)
- Branches:
- ADT, ast-experimental, enum, forall-pointer-decay, master, pthread-emulation, qualifiedEnum
- Children:
- 4d8fbf4
- Parents:
- ce9f9d4
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/mutex_stmt.hfa
rce9f9d4 ra8367eb 40 40 } 41 41 } 42 43 static inline L * __get_ptr( L & this ) { 44 return &this; 45 } 46 47 static inline L __get_type( L & this ); 48 49 static inline L __get_type( L * this ); 42 50 } -
src/Concurrency/Keywords.cc
rce9f9d4 ra8367eb 1200 1200 new PointerType( 1201 1201 noQualifiers, 1202 new TypeofType( noQualifiers, args.front()->clone() ) 1202 //new TypeofType( noQualifiers, args.front()->clone() ) 1203 new TypeofType( noQualifiers, new UntypedExpr( 1204 new NameExpr( "__get_type" ), 1205 { args.front()->clone() } 1206 ) 1207 ) 1203 1208 ), 1204 1209 new ConstantExpr( Constant::from_ulong( args.size() ) ), … … 1208 1213 new ListInit( 1209 1214 map_range < std::list<Initializer*> > ( args, [](Expression * var ){ 1210 return new SingleInit( new AddressExpr( var ) ); 1215 return new SingleInit( new UntypedExpr( 1216 new NameExpr( "__get_ptr" ), 1217 { var } 1218 ) ); 1219 //return new SingleInit( new AddressExpr( var ) ); 1211 1220 }) 1212 1221 ) … … 1214 1223 1215 1224 StructInstType * lock_guard_struct = new StructInstType( noQualifiers, lock_guard_decl ); 1216 TypeExpr * lock_type_expr = new TypeExpr( new TypeofType( noQualifiers, args.front()->clone() ) ); 1225 TypeExpr * lock_type_expr = new TypeExpr( 1226 new TypeofType( noQualifiers, new UntypedExpr( 1227 new NameExpr( "__get_type" ), 1228 { args.front()->clone() } 1229 ) 1230 ) 1231 ); 1217 1232 1218 1233 lock_guard_struct->parameters.push_back( lock_type_expr ) ;
Note: See TracChangeset
for help on using the changeset viewer.