The copy/move constructors and the copy/move assignment operators of
source_location meet the following postconditions:
Given two objects  
lhs and 
rhs of type 
source_location,
where 
lhs is a copy/move result of 
rhs, and
where 
rhs_p is a value denoting the state of 
rhs
before the corresponding copy/move operation,
then each of the following conditions is 
true:
- strcmp(lhs.file_name(), rhs_p.file_name()) == 0
- strcmp(lhs.function_name(), rhs_p.function_name()) == 0
- lhs.line() == rhs_p.line()
- lhs.column() == rhs_p.column()