[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.35,1.36
From: |
Rhys Weatherley <address@hidden> |
Subject: |
[Dotgnu-pnet-commits] CVS: pnet/cscc/csharp cs_lvalue.tc,1.35,1.36 |
Date: |
Wed, 26 Feb 2003 00:09:52 -0500 |
Update of /cvsroot/dotgnu-pnet/pnet/cscc/csharp
In directory subversions:/tmp/cvs-serv24009/cscc/csharp
Modified Files:
cs_lvalue.tc
Log Message:
Disallow "using" aliases to refer to other aliases (partial fix
for bug #1798).
Index: cs_lvalue.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/cscc/csharp/cs_lvalue.tc,v
retrieving revision 1.35
retrieving revision 1.36
diff -C2 -r1.35 -r1.36
*** cs_lvalue.tc 7 Jan 2003 10:18:01 -0000 1.35
--- cs_lvalue.tc 26 Feb 2003 05:09:50 -0000 1.36
***************
*** 894,898 ****
{
CCErrorOnLine(yygetfilename(alias), yygetlinenum(alias),
! "circularity detected in 'Using' declaration");
CSSemSetLValue(value, ILType_Int32);
return value;
--- 894,898 ----
{
CCErrorOnLine(yygetfilename(alias), yygetlinenum(alias),
! "circularity detected in `using' declaration");
CSSemSetLValue(value, ILType_Int32);
return value;
***************
*** 900,904 ****
--- 900,911 ----
alias->visited=ILVisitMode_Processing;
*parent = (ILNode*)ILScopeDataGetData1(data);
+ if(info->resolvingAlias)
+ {
+ CCErrorOnLine(yygetfilename(alias), yygetlinenum(alias),
+ "using aliases may not refer
to other aliases");
+ }
+ info->resolvingAlias = 1;
value = ILNode_SemAnalysis(*parent,info,parent);
+ info->resolvingAlias = 0;
alias->visited=ILVisitMode_Done;
return value;
***************
*** 934,938 ****
data = ILScopeLookup(info->currentScope, node->name, 1);
! if(data && ILScopeDataGetKind(data) == IL_SCOPE_ALIAS)
{
alias=(ILNode_UsingAlias*)ILScopeDataGetNode(data);
--- 941,946 ----
data = ILScopeLookup(info->currentScope, node->name, 1);
! if(data && ILScopeDataGetKind(data) == IL_SCOPE_ALIAS &&
! !(info->resolvingAlias))
{
alias=(ILNode_UsingAlias*)ILScopeDataGetNode(data);
***************
*** 940,944 ****
{
CCErrorOnLine(yygetfilename(alias), yygetlinenum(alias),
! "circularity detected in 'Using' declaration");
CSSemSetLValue(value, ILType_Int32);
return value;
--- 948,952 ----
{
CCErrorOnLine(yygetfilename(alias), yygetlinenum(alias),
! "circularity detected in `using' declaration");
CSSemSetLValue(value, ILType_Int32);
return value;
***************
*** 946,950 ****
--- 954,965 ----
alias->visited=ILVisitMode_Processing;
*parent = (ILNode*)ILScopeDataGetData1(data);
+ if(info->resolvingAlias)
+ {
+ CCErrorOnLine(yygetfilename(alias), yygetlinenum(alias),
+ "using aliases may not refer
to other aliases");
+ }
+ info->resolvingAlias = 1;
value = ILNode_SemAnalysis(*parent,info,parent);
+ info->resolvingAlias = 0;
alias->visited=ILVisitMode_Done;
return value;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Dotgnu-pnet-commits] CVS: pnet/cscc/csharp cs_lvalue.tc,1.35,1.36,
Rhys Weatherley <address@hidden> <=
- Prev by Date:
[Dotgnu-pnet-commits] CVS: pnet ChangeLog,1.2198,1.2199
- Next by Date:
[Dotgnu-pnet-commits] CVS: cscctest/csharp/stmt using2.err,1.2,1.3 using2.jerr,1.2,1.3
- Previous by thread:
[Dotgnu-pnet-commits] CVS: pnet ChangeLog,1.2198,1.2199
- Next by thread:
[Dotgnu-pnet-commits] CVS: cscctest/csharp/stmt using2.err,1.2,1.3 using2.jerr,1.2,1.3
- Index(es):