﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc
1659	Error extraño usando PutName	Pedro Gea	Víctor de Buen Remiro	"Localizando un error un tanto dificil de comprender llego a aislar el siguiente código:
{{{
Real MyAppend(Set set, Anything data) {
  Set set := [[ data ]];
1};

NameBlock variable = [[
  Set box = Copy(Empty)
]];

Real MyAppend(variable::box, Matrix Rand(1,1,1,1));

Set content = [[
  variable::box[1]
]];

Real {
  Real data = 1;
  WriteLn(""Existe 'data' y es de tipo ""<<Grammar(data));
  Anything PutName(""E"", content[1]);
  WriteLn(""Existe 'data' y es de tipo ""<<Grammar(data));
1};
}}}

que devuelve:
{{{
Existe 'data' y es de tipo Real
Existe 'data' y es de tipo Matrix
}}}

Parece como si {{{PutName}}} liberara un nombre del objeto, anteponiéndose éste incluso a alguno declarado localmente.

Por ejemplo esto:
{{{
Set box = Copy(Empty);
Real MyAppend(box, Real 2);
Real {
  Real data = 1;
  Anything PutName(""E"", box[1]);
  data + 1
}; 
}}}
devuelve {{{3}}}.
"	defect	closed	highest	Mantainance	Kernel	3.1	critical	fixed		
