[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Dotgnu-pnet-commits] CVS: pnet/cscc/csharp cs_lvalue.tc,1.34,1.35
From: |
Rhys Weatherley <address@hidden> |
Subject: |
[Dotgnu-pnet-commits] CVS: pnet/cscc/csharp cs_lvalue.tc,1.34,1.35 |
Date: |
Tue, 07 Jan 2003 05:18:05 -0500 |
Update of /cvsroot/dotgnu-pnet/pnet/cscc/csharp
In directory subversions:/tmp/cvs-serv20245/cscc/csharp
Modified Files:
cs_lvalue.tc
Log Message:
Work around erroneous enum definitions that use the underlying type
for the constants, instead of the type itself.
Index: cs_lvalue.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/cscc/csharp/cs_lvalue.tc,v
retrieving revision 1.34
retrieving revision 1.35
diff -C2 -r1.34 -r1.35
*** cs_lvalue.tc 8 Dec 2002 01:59:27 -0000 1.34
--- cs_lvalue.tc 7 Jan 2003 10:18:01 -0000 1.35
***************
*** 548,552 ****
*parent = constNode;
ILNode_EvalConst(constNode, info,
&evalValue);
! CSSemSetConstant(value,
ILField_Type(field), evalValue);
}
else
--- 548,562 ----
*parent = constNode;
ILNode_EvalConst(constNode, info,
&evalValue);
! thisType =
ILClassToType(ILField_Owner(field));
! type = ILField_Type(field);
! if(ILTypeIsEnum(thisType) &&
! ILTypeIdentical(type,
ILTypeGetEnumType(thisType)))
! {
! /* The enum definition
erroneously used the
! underlying type for the
constant, instead
! of using the enum type.
Work around it */
! type = thisType;
! }
! CSSemSetConstant(value, type,
evalValue);
}
else
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Dotgnu-pnet-commits] CVS: pnet/cscc/csharp cs_lvalue.tc,1.34,1.35,
Rhys Weatherley <address@hidden> <=