Changes in src/ResolvExpr/Resolver.cc [52f85e0:3cfe27f]
- File:
-
- 1 edited
-
src/ResolvExpr/Resolver.cc (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/ResolvExpr/Resolver.cc
r52f85e0 r3cfe27f 10 10 // Created On : Sun May 17 12:17:01 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : T ue Feb 9 21:57:52201613 // Update Count : 1 7912 // Last Modified On : Thu Mar 24 16:43:11 2016 13 // Update Count : 181 14 14 // 15 15 … … 165 165 Type *new_type = resolveTypeof( objectDecl->get_type(), *this ); 166 166 objectDecl->set_type( new_type ); 167 // To handle initialization of routine pointers, e.g., int (*fp)(int) = foo(), means that class-variable 168 // initContext is changed multiple time because the LHS is analysed twice. The second analysis changes 169 // initContext because of a function type can contain object declarations in the return and parameter types. So 170 // each value of initContext is retained, so the type on the first analysis is preserved and used for selecting 171 // the RHS. 172 Type *temp = initContext; 167 173 initContext = new_type; 168 174 SymTab::Indexer::visit( objectDecl ); 175 initContext = temp; 169 176 } 170 177
Note:
See TracChangeset
for help on using the changeset viewer.