                         gname = prop.value
 
                 if not hasOwn.call @ejs_globals, gname
-                        throw new ReferenceError "unknown identifier `#{gname}' at line #{prop.loc.start.line}"
+                        throw new ReferenceError "undeclared identifier `#{gname}' at line #{prop.loc.start.line}"
 
                 c = @getAtom gname
 

                gname = prop.name

                if not hasOwn.call @ejs_globals, gname
                        throw new ReferenceError "unknown identifier `#{gname}' at line #{prop.loc.start.line}"
                        
                if @options.frozen_global
                        return ir.createLoad @ejs_globals[prop.name], "load-#{gname}"

                else if is_intrinsic(lhs, "%getGlobal")
                        gname = lhs.arguments[0].name
                        if not hasOwn.call @ejs_globals, gname
                                throw new ReferenceError "undeclared identifier `#{gname}' at line #{lhs.loc.start.line}"

                        @createCall @ejs_runtime.global_setprop, [@getAtom(gname), rhvalue], "globalpropstore_#{lhs.arguments[0].name}"
                else
