From 51422a0c6bc0128cd5635a01c402ef56ad4ed770 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Sun, 11 May 2008 03:28:45 +0000 Subject: * interp/iterator.boot (compRepeatOrCollect): Don't iterator variables and variables declared in a loop are local to that loop. * interp/g-error.boot (needsToSplitMessage): New. (errorSupervisor): Use it. * interp/compiler.boot (compSymbol): Highlight erron=eous symbol. * interp/wi1.boot (stackMessage): Remove duplicate. * algebra/ffcat.spad.pamphlet (FiniteFieldCategory): Tidy. * algebra/fff.spad.pamphlet (FiniteFieldFunctions): Likewie. * algebra/groebsol.spad.pamphlet (GroebnerSolve): Likewise. * algebra/intfact.spad.pamphlet (IntegerRoots): Likewise. * algebra/mkfunc.spad.pamphlet (InputForm): Likewise. * algebra/numtheor.spad.pamphlet (IntegerNumberTheoryFunctions): Likewise. * algebra/permgrps.spad.pamphlet (PermutationGroup): Likewise. * algebra/random.spad.pamphlet (RandomFloatDistributions): Likewise. * algebra/sgcf.spad.pamphlet (SymmetricGroupCombinatoricFunctions): Likewise. * algebra/triset.spad.pamphlet (PolynomialSetUtilitiesPackage): Likewise. * algebra/twofact.spad.pamphlet (TwoFactorize): Likewise. --- src/interp/iterator.boot | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/interp/iterator.boot') diff --git a/src/interp/iterator.boot b/src/interp/iterator.boot index 70a52f6d..d62f4939 100644 --- a/src/interp/iterator.boot +++ b/src/interp/iterator.boot @@ -132,7 +132,10 @@ compRepeatOrCollect(form,m,e) == (u:=modeIsAggregateOf('Vector,targetMode,e)) => CAR u ["Vector",m'] m' - coerceExit([form',m'',e'],targetMode) + T := coerceExit([form',m'',e'],targetMode) or return nil + -- iterator variables and other variables declared in + -- in a loop are local to the loop. + [T.expr,T.mode,e] --constructByModemap([x,source,e],target) == -- u:= -- cgit v1.2.3