Index: tol/btol/bgrammar/oprimp.cpp
===================================================================
--- tol/btol/bgrammar/oprimp.cpp	(revision 1027aba6f9f1723e746ef7afed066d1e4a0220fd)
+++ tol/btol/bgrammar/oprimp.cpp	(revision 8597e37b44019b7d75644ecdd6d058f6ce186090)
@@ -665,5 +665,17 @@
   BSyntaxObject* result = NIL, *rightResult=NIL;
   TRACE_SHOW_MEDIUM(fun," 1");
-  if(!IsIdentifier(name)) { return(NIL); }
+  if(!IsIdentifier(name)) 
+  { 
+    Error(name+I2(" is not a valid identifier and could not be created.", 
+                  " no es un identificador válido y no se pudo crear."));
+    return(NIL); 
+  }
+  if(name=="inf") 
+  { 
+    Error(name+I2(" is a numeric constant and could not be replaced.", 
+                  " no es un identificador válido y no se pudo reemplazar."));
+    return(NIL); 
+  }
+
   TRACE_SHOW_MEDIUM(fun," 2");
   BInt level = BGrammar::Level();
