Keywords: lock, constraints, user, location, annotation
If a project includes a UCF file with a name that does NOT match the top-level name to which it is associated, running the "Back Annotate Pin Locations" process does not correctly update the UCF.
Example
The top-level file is named top.vhd.
The UCF file is named myucf.ucf.
When the "Back Annotate Pin Locations" process is run, instead of updating myucf.ucf with the correct pin location constraints, a new file named top.ucf is created (if it did not already exist) and the pin location constraints are written to this file.
When I try to run "Cleanup Project Files", the myucf.ucf file is removed from the ISE project.