After forced login, return to first entered login
I believe the correct way to do this is:
drupal_goto('user/login', array('query' =&gt; drupal_get_destination()));

The documentation for drupal_get_destination() states:

Prepares a 'destination' URL query parameter for use with drupal_goto().
Used to direct the user back to the referring page after completing a form. By default the current URL is returned. If a destination exists in the previous request, that destination is returned. As such, a destination can persist across multiple pages.

Update: You could try putting the URL in directly:
$path = 'path-to-redirect-to'; // or $GET['q']
drupal_goto('user/login', 'query' =&gt; array('destination' =&gt; $path)));