Changeset a5a71d0 for src/ResolvExpr/Resolver.cc
- Timestamp:
- Apr 6, 2016, 5:11:32 PM (8 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
- Children:
- eab39cd
- Parents:
- 39786813 (diff), 3aba311 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/ResolvExpr/Resolver.cc
r39786813 ra5a71d0 10 10 // Created On : Sun May 17 12:17:01 2015 11 11 // Last Modified By : Rob Schluntz 12 // Last Modified On : Wed Mar 30 15:47:19201612 // Last Modified On : Mon Apr 04 17:11:54 2016 13 13 // Update Count : 203 14 14 // … … 167 167 Type *new_type = resolveTypeof( objectDecl->get_type(), *this ); 168 168 objectDecl->set_type( new_type ); 169 // To handle initialization of routine pointers, e.g., int (*fp)(int) = foo(), means that class-variable 170 // initContext is changed multiple time because the LHS is analysed twice. The second analysis changes 171 // initContext because of a function type can contain object declarations in the return and parameter types. So 172 // each value of initContext is retained, so the type on the first analysis is preserved and used for selecting 173 // the RHS. 174 Type *temp = initContext; 169 175 initContext = new_type; 170 176 SymTab::Indexer::visit( objectDecl ); 177 initContext = temp; 171 178 } 172 179
Note: See TracChangeset
for help on using the changeset viewer.