diff options
author | Richard Stallman <rms@gnu.org> | 1993-03-02 02:03:36 +0000 |
---|---|---|
committer | Richard Stallman <rms@gnu.org> | 1993-03-02 02:03:36 +0000 |
commit | 3791970daf55a3bedd1d83e46bdf798f44b4b6a9 (patch) | |
tree | 79f7676ccaf3145df0aaacb982e7b167d66d1670 | |
parent | f10fec92a8ffe4e144751152a7eb0f7bb21a9e24 (diff) | |
download | gcc-3791970daf55a3bedd1d83e46bdf798f44b4b6a9.zip gcc-3791970daf55a3bedd1d83e46bdf798f44b4b6a9.tar.gz gcc-3791970daf55a3bedd1d83e46bdf798f44b4b6a9.tar.bz2 |
(readonly_warning): Warn about assignment to iterator.
From-SVN: r3578
-rw-r--r-- | gcc/c-typeck.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c index 3897350..68c6679 100644 --- a/gcc/c-typeck.c +++ b/gcc/c-typeck.c @@ -3356,6 +3356,14 @@ readonly_warning (arg, string) char buf[80]; strcpy (buf, string); + /* Forbid assignments to iterators. */ + if (TREE_CODE (TREE_OPERAND (arg, 0)) == VAR_DECL + && ITERATOR_P (TREE_OPERAND (arg, 0))) + { + strcat (buf, " of iterator `%s'"); + pedwarn (buf, IDENTIFIER_POINTER (DECL_NAME (TREE_OPERAND (arg, 1)))); + } + if (TREE_CODE (arg) == COMPONENT_REF) { if (TYPE_READONLY (TREE_TYPE (TREE_OPERAND (arg, 0)))) |