Automatic nodetitles and location tokens?
I have taken some good looks at your issue.
At the moment I find that the code for Location CCK is problematic, I managed to make it work with the following modification:

diff --git a/contrib/location_cck/location_cck.module b/contrib/location_cck/location_cck.module
index b302960..443b6a0 100644
--- a/contrib/location_cck/location_cck.module
+++ b/contrib/location_cck/location_cck.module
@@ -657,9 +657,9 @@ function location_cck_tokens($type, $tokens, array $data = array(), array $optio
   $replacements = array();

   // Make sure we have a node.
-  if (isset($data['entity_type']) &amp;&amp; $data['entity_type'] == 'node') {
+  if ($type == 'node') {

-    $node = $data['entity'];
+    $node = $data['node'];

     // Get the available fields from the location module.
     $available = location_field_names(TRUE);


The token that worked after this patching was specific to the CCK field I added to my content type:

[node:field_my_location_field:city]


Alternatively, for your goal "...to have automatic node titles taken from user contributed content...", you can use the Node Locations submodule, this works as expected out of the box. The following tokens

[node:location:city]
and
[node:location:city:0]


both worked fine in combination with Automatic Nodetitles.

Hope this helps!