------- Comment #14 from dseketel at redhat dot com  2008-07-01 16:29 -------
Hello,

Just a quick comment on this bug.

I think that in the example you gave, gcc (at the least 4.3.0 version) is
giving a correct column location.

The expression gcc is complaining about is:

"a +- b".

That expression is normally valid, an can be re-written as a + -b (like in 2 +
-3).
In that case, the '-' is called an "unary minus" operator.

In your case, the reason why gcc is complaining is because 'b' is of type
pointer. And you cannot apply the "unary minus" operator to a pointer.

So gcc complains about the _operand_, saying the operand is of the wrong type.
That is why gcc is referering to the operand, instead of refering to the '-'.

On the other hand, it is notorious that gcc does not display extremely accurate
column numbers in error message. Hopefully, that situation can get better with
the patches attached above.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31754

Reply via email to