Changeset 373
- Timestamp:
- 02/06/10 03:02:54 (2 years ago)
- Files:
-
- branches/dmd-1.x/src/inline.c (modified) (2 diffs)
- trunk/src/inline.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/dmd-1.x/src/inline.c
r342 r373 1 1 2 // Copyright (c) 1999-20 09by Digital Mars2 // Copyright (c) 1999-2010 by Digital Mars 3 3 // All Rights Reserved 4 4 // written by Walter Bright … … 275 275 int CallExp::inlineCost(InlineCostState *ics) 276 276 { 277 // Bugzilla 3500: super.func() calls must be devirtualized, and the inliner 278 // can't handle that at present. 279 if (e1->op == TOKdotvar && ((DotVarExp *)e1)->e1->op == TOKsuper) 280 return COST_MAX; 281 277 282 return 1 + e1->inlineCost(ics) + arrayInlineCost(ics, arguments); 278 283 } trunk/src/inline.c
r342 r373 1 1 2 // Copyright (c) 1999-20 09by Digital Mars2 // Copyright (c) 1999-2010 by Digital Mars 3 3 // All Rights Reserved 4 4 // written by Walter Bright … … 276 276 int CallExp::inlineCost(InlineCostState *ics) 277 277 { 278 // Bugzilla 3500: super.func() calls must be devirtualized, and the inliner 279 // can't handle that at present. 280 if (e1->op == TOKdotvar && ((DotVarExp *)e1)->e1->op == TOKsuper) 281 return COST_MAX; 282 278 283 return 1 + e1->inlineCost(ics) + arrayInlineCost(ics, arguments); 279 284 }
