PR# 16970 Incorrect C code generated for `attached {NONE} (47)', causing execution panic

Problem Report Summary
Submitter: prestoat2000
Category: Compiler
Priority: Medium
Date: 2010/07/16
Class: Bug
Severity: Serious
Number: 16970
Release: 6.6.83767
Confidential: No
Status: Closed
Responsible:
Environment: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.9.0.10) Gecko/2009042715 Firefox/3.0.10 Solaris 10 on SPARC
Synopsis: Incorrect C code generated for `attached {NONE} (47)', causing execution panic

Description
Incorrect C code is generated for an object test

   attached {NONE} (47)

when frozen or finalized.  A snippet of the C code looks like:

        *(EIF_INTEGER_32 *)loc1 = ((EIF_INTEGER_32) 47L);
        loc1 = ((EIF_INTEGER_32) 47L);

The second line is clearly incorrect, since `loc1' is an EIF_REFERENCE.
A subsequent call to `full_collect' to force a garbage collection
causes a run-time panic.

Added eweasel test attach076 for this bug.
To Reproduce
Run eweasel test attach076.
Problem Report Interactions
From:alexk_es    Date:2010/07/20    Status: Closed    Download   
Fixed in rev#83961 of EiffelStudio 6.7 intermediate release.