For PR automake/360: Propagate more locations. * automake.in (handle_programs): Adjust usage of am_install_var's return value. Pass on locations as context to file_contents. (handle_libraries, handle_ltlibraries): Likewise. Use locations in the 'not a standard library name' diagnostic. (handle_emacs_lisp, handle_python): Adjust usage of am_install_var's return value. Pass on locations to require_variables and require_conf_file. (check_ambiguous_conditional): Strip trailing dot in message. (value_to_list): Add the $WHERE and $LOC_WANTED arguments. (variable_value_as_list_recursive_worker): Add the $LOC_WANTED argument. Adjust calls to value_to_list. (variable_value_as_list_recursive): Call variable_value_as_list_recursive_worker with $LOC_WANTED = 0. (variable_loc_and_value_as_list_recursive): New function, variable_value_as_list_recursive_worker with $LOC_WANTED = 1. (am_install_var): Use variable_loc_and_value_as_list_recursive, and return a list of [$location, $value] pairs. (rule_define): Use better locations in EXEEXT diagnostic. (handle_source_transform, define_objects_from_sources): Add and use a $WHERE argument. Adjust callers. * tests/stdlib.test: Grep the location in error message. * tests/location.test: New file. * tests/Makefile.am (TESTS): Add location.test.