re PR c++/86993 (assignment of read-only variable error reported at wrong location)
authorJakub Jelinek <jakub@gcc.gnu.org>
Mon, 27 Aug 2018 18:36:23 +0000 (20:36 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Mon, 27 Aug 2018 18:36:23 +0000 (20:36 +0200)
commitd4714a1b5eb458fb233024ef16b0dda6e712d632
treefb626b754e6fe9c953cc0a29d697d46263f2b18d
parenta9cf35bf3e9b753710f3a443f6e4095a2840c7b6
re PR c++/86993 (assignment of read-only variable error reported at wrong location)

PR c++/86993
* cp-tree.h (cxx_readonly_error): Add location_t argument.
* typeck2.c (cxx_readonly_error): Add LOC argument, pass it to
ERROR_FOR_ASSIGNMENT macro and readonly_error.  Add LOC argument
to ERROR_FOR_ASSIGNMENT macro, use error_at instead of error and
pass LOC to it.  Formatting fixes.
* typeck.c (cp_build_unary_op): Pass location to cxx_readonly_error.
(cp_build_modify_expr): Pass loc to cxx_readonly_error.
* semantics.c (finish_asm_stmt): Pass input_location to
cxx_readonly_error.

* g++.dg/diagnostic/pr86993.C: New test.

From-SVN: r263891
gcc/ChangeLog
gcc/cp/ChangeLog
gcc/cp/cp-tree.h
gcc/cp/semantics.c
gcc/cp/typeck.c
gcc/cp/typeck2.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/diagnostic/pr86993.C [new file with mode: 0644]