ID:1619310
 
Not a bug
BYOND Version:506
Operating System:Windows 7 Pro
Web Browser:
Applies to:DM Language
Status: Not a bug

This is not a bug. It may be an incorrect use of syntax or a limitation in the software. For further discussion on the matter, please consult the BYOND forums.
Descriptive Problem Summary:
The help on states that Enter proc (atom) is called when an object attempts to enter the contents list.

Expected Results:
Enter proc (atom) must be called when setting the movable atom loc.

Actual Results:
Enter proc (atom) is only called when Move proc (movable atom) is called.
That is no bug, it is how it was programmed.

Move() calls many procedures such as Enter() and Cross()

Modifying one's loc forcefully changes the person's location. Since you are modifying a variable, the other procs are not called. It is useful in instances where you think Move() will fail, such as a safety teleport area where someone could remain at the spawn location.

Perhaps an amendment to the DM Ref for loc and Enter() stating that modifying loc will not call these procedures and that Move() may be better suited?
The entry for Entered() gives a nice call-out to it:

Called when an object has entered the contents list through Move(). Directly setting the object's loc or step_x/y vars does not result in a call to Entered() or any other movement side-effects. The same goes for creation or deletion of an object at a location.

But yes, this is the intended behavior, so I'm going to mark this as Not-a-bug.
DarkCampainger resolved issue (Not a bug)