diff options
author | Douglas Gregor <dgregor@apple.com> | 2008-11-17 17:14:10 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2008-11-17 17:14:10 +0000 |
commit | accde4343cf7b85620c0efbdedf5ed5b8e711fba (patch) | |
tree | 8bdecbd3ee00ece6ff9ced14b380b86c643a2797 | |
parent | 17c226b8ca6b4ac5898e929926180bc19e666669 (diff) | |
download | bcm5719-llvm-accde4343cf7b85620c0efbdedf5ed5b8e711fba.tar.gz bcm5719-llvm-accde4343cf7b85620c0efbdedf5ed5b8e711fba.zip |
Add TODO item for adding more source-range information to declarators
llvm-svn: 59446
-rw-r--r-- | clang/TODO.txt | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/clang/TODO.txt b/clang/TODO.txt index 111f747275d..78f965b426a 100644 --- a/clang/TODO.txt +++ b/clang/TODO.txt @@ -32,3 +32,24 @@ This specific diagnostic is implemented, but others should be updated. C++ (checker): For iterators, warn of the use of "iterator++" instead of "++iterator" when when the value returned by operator++(int) is ignored. + +//===---------------------------------------------------------------------===// + +We want to keep more source range information in Declarator to help +produce better diagnostics. Declarator::getSourceRange() should be +implemented to give a range for the whole declarator with all of its +specifiers, and DeclaratorChunk::ParamInfo should also have a source +range covering the whole parameter, so that an error message like this: + +overloaded-operator-decl.cpp:37:23: error: parameter of overloaded post-increment operator must have type 'int' (not 'float') +X operator++(X&, const float& f); + ^ +can be turned into something like this: + +overloaded-operator-decl.cpp:37:23: error: parameter of overloaded post-increment operator must have type 'int' (not 'float') +X operator++(X&, const float& f); + ^ ~~~~~~~~~~~~~~ + + + + |