If the list of locations designates a call stack, then its first element should be the deepmost
location of this stack. This is consistent with the need for getLocation() to
return the most precise location.

getLocations

addLocation

Implementations are free to filter locations that can be added (e.g. Location.UNKNOWN),
and there is therefore no guarantee that the given location will actually be added to the list.
Filtered locations are silently ignored.