Changes in src/ResolvExpr/Unify.cpp [b6f2e7ab:81e768d]
- File:
-
- 1 edited
-
src/ResolvExpr/Unify.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/ResolvExpr/Unify.cpp
rb6f2e7ab r81e768d 292 292 if ( !array2 ) return; 293 293 294 if ( array->isVarLen != array2->isVarLen ) return; 295 if ( (array->dimension != nullptr) != (array2->dimension != nullptr) ) return; 296 297 if ( array->dimension ) { 294 // Permit cases where one side has a dimension or isVarLen, 295 // while the other side is the opposite. 296 // Acheves a wildcard-iterpretation semantics, where lack of 297 // dimension (`float a[]` or `float a[25][*]`) means 298 // "anything here is fine." 299 // Sole known case where a verbatim-match semantics is intended 300 // is typedef redefinition, for which extra checking is added 301 // in src/Validate/ReplaceTypedef.cpp. 302 303 if ( array->dimension && array2->dimension ) { 298 304 assert( array2->dimension ); 299 305 // type unification calls expression unification (mutual recursion)
Note:
See TracChangeset
for help on using the changeset viewer.