Index: tol/btol/bgrammar/oprimp.cpp
===================================================================
--- tol/btol/bgrammar/oprimp.cpp	(revision ba3898348d1630ac0a22ae45565d7d5a52fc3ca6)
+++ tol/btol/bgrammar/oprimp.cpp	(revision bfa658082d9e20b58dd1da2b6cbaf8ac0348fb58)
@@ -1196,6 +1196,6 @@
   const BText& name       = BParser::treToken(argList)->Name();
   BGrammar*    setGrammar = GraSet();
-  BStruct*     str        = FindStruct(name);
-  if(str && str->NameBlock())
+  BStruct*     str        = FindStruct(name); 
+  if(str && str->NameBlock()  && !BNameBlock::Building())
   {
     Warning(I2("Global structure ","La estructura global")+
@@ -1206,7 +1206,15 @@
     str = NULL;
   }
+  if(str && BNameBlock::Building())
+  {
+    str = NULL;
+  }
+  if(str && (str->Level()<BGrammar::Level()))
+  {
+    str = NULL;
+  }
   if(str)
   {
-    if(!argList->cdr()) { return(str); }
+  //if(!argList->cdr()) { return(str); }
     BText path = str->SourcePath();
 #ifndef UNIX
