- Timestamp:
- Jun 19, 2019, 6:05:09 PM (6 years ago)
- Branches:
- ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
- Children:
- c0f9efe
- Parents:
- 17a0ede2
- Location:
- src/AST
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
src/AST/Expr.hpp
r17a0ede2 rb69233ac 47 47 48 48 ParamEntry() : decl( 0 ), declptr( nullptr ), actualType( nullptr ), formalType( nullptr ), expr( nullptr ) {} 49 ParamEntry( UniqueId id, Decl * declptr, Type* actual, Type* formal, Expr* e ) 49 ParamEntry( 50 UniqueId id, const Decl * declptr, const Type * actual, const Type * formal, 51 const Expr * e ) 50 52 : decl( id ), declptr( declptr ), actualType( actual ), formalType( formal ), expr( e ) {} 51 53 }; … … 129 131 case Params: return data.inferParams; 130 132 } 133 assert(!"unreachable"); 131 134 return *((InferredParams*)nullptr); 132 135 } … … 138 141 assert(!"Mode was not already Params"); 139 142 return *((InferredParams*)nullptr); 143 } 144 145 void set_inferParams( InferredParams && ps ) { 146 switch(mode) { 147 case Slots: 148 data.resnSlots.~ResnSlots(); 149 // fallthrough 150 case Empty: 151 new(&data.inferParams) InferredParams{ std::move( ps ) }; 152 mode = Params; 153 break; 154 case Params: 155 data.inferParams = std::move( ps ); 156 break; 157 } 140 158 } 141 159 -
src/AST/porting.md
r17a0ede2 rb69233ac 308 308 * pulled out conversion cost promotion into separate `promoteCvtCost` function 309 309 310 `resolveAssertions` => `satisfyAssertions` 311 * `ResolveAssertions.h` => `SatisfyAssertions.hpp` 312 * `Resn*` => `Sat*` 313 310 314 [1] https://gcc.gnu.org/onlinedocs/gcc-9.1.0/gcc/Type-Attributes.html#Type-Attributes 311 315
Note: See TracChangeset
for help on using the changeset viewer.