Skip to content

Commit

Permalink
Add some simple documentation to the unbound global variable warning
Browse files Browse the repository at this point in the history
  • Loading branch information
ChrisJefferson committed May 15, 2017
1 parent 4398c7b commit 0860db7
Showing 1 changed file with 12 additions and 11 deletions.
23 changes: 12 additions & 11 deletions src/read.c
Original file line number Diff line number Diff line change
Expand Up @@ -501,17 +501,18 @@ void ReadCallVarAss (
if (WarnOnUnboundGlobalsRNam == 0)
WarnOnUnboundGlobalsRNam = RNamName("WarnOnUnboundGlobals");

if ( type == 'g'
&& mode != 'i'
&& STATE(CountNams) != 0
&& var != STATE(CurrLHSGVar)
&& VAL_GVAR(var) == 0
&& ExprGVar(var) == 0
&& ! STATE(IntrIgnoring)
&& ! GlobalComesFromEnclosingForLoop(var)
&& (GAPInfo == 0 || !IS_REC(GAPInfo) || !ISB_REC(GAPInfo,WarnOnUnboundGlobalsRNam) ||
ELM_REC(GAPInfo,WarnOnUnboundGlobalsRNam) != False )
&& ! SyCompilePlease )
if ( type == 'g' // Reading a global variable
&& mode != 'i' // Not inside 'IsBound'
&& STATE(CountNams) != 0 // Inside a function
&& var != STATE(CurrLHSGVar) // Not LHS of assignment
&& VAL_GVAR(var) == 0 // Not an existing global var
&& ExprGVar(var) == 0 // Or an auto var
&& ! STATE(IntrIgnoring) // Not currently ignoring parsed code
&& ! GlobalComesFromEnclosingForLoop(var) // Not loop variable
&& (GAPInfo == 0 || !IS_REC(GAPInfo)
|| !ISB_REC(GAPInfo,WarnOnUnboundGlobalsRNam) // Warning enabled
|| ELM_REC(GAPInfo,WarnOnUnboundGlobalsRNam) != False )
&& ! SyCompilePlease ) // Not compiling
{
SyntaxWarning("Unbound global variable");
}
Expand Down

0 comments on commit 0860db7

Please sign in to comment.