Mantis Bugtracker
  

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0007543 [Squeak] VM minor always 06-05-10 18:00 06-05-10 18:42
Reporter lewis View Status public  
Assigned To lewis
Priority normal Resolution fixed  
Status resolved   Product Version
Summary 0007543: Slang inlining bug - type declaration from inlined method incorrectly applied to varible in sender.
Description SlangInliningBug-dtl illustrates the bug.

To see the problem, load the change set and evaluate 'Interpreter asInlinedCString: #a'

Method #a calls #b: calls #c: and both #b: and #c: are inlined. Prior to the bug fix, the type declaration for a variable in #a is clobbered by a type declaration in #c: that should no longer be present.

The bad generated code is:

EXPORT(sqInt) a(void) {
    TypeDeclarationForParameterFumInMethodC: fum;

    fum = 0;
    return fum;
}

The correct output should be:

EXPORT(sqInt) a(void) {
    OriginalTypeDeclarationForFumInA fum;

    fum = 0;
    return fum;
}

Additional Information
Attached Files  SlangInliningBug-dtl.8.cs [^] (2,138 bytes) 06-05-10 18:00

- Relationships

- Notes
(0013802 - 24 - 24 - 24 - 24 - 24 - 24)
lewis
06-05-10 18:42

Fixed in VMMaker-dtl.179
 

- Issue History
Date Modified Username Field Change
06-05-10 18:00 lewis New Issue
06-05-10 18:00 lewis Status new => assigned
06-05-10 18:00 lewis Assigned To  => lewis
06-05-10 18:00 lewis File Added: SlangInliningBug-dtl.8.cs
06-05-10 18:42 lewis Status assigned => resolved
06-05-10 18:42 lewis Resolution open => fixed
06-05-10 18:42 lewis Note Added: 0013802


Mantis 1.0.8[^]
Copyright © 2000 - 2007 Mantis Group
37 total queries executed.
29 unique queries executed.
Powered by Mantis Bugtracker