The problem with the C++ example is that `setter`, `getter`, `indexer` are 
types not functions, they should be highlighted as types. Whilst 
`pl::Path::root`, pl::Path::segment` and `pl::Path::scheme` are functions and 
should be highlighted as such.

(Ok, I was mean not telling you that, but I want to make the point that in C++, 
purely syntax does not designate a function.)

>  usually no one use such prototypes, usually parameters names present in 
> prototypes

In C the names are not left out, but in C++ it is more common, and as I said 
above if a parameter is not used the name _must_ be left out to avoid compiler 
warnings.  Remember in C++ a derived class can override functions of a parent 
class, but often doesn't need to use all the parameters.

Thanks for the opportunity to use my catch phrase "C++ is not C".  Assumptions 
that its just C with classes are wrong, it has evolved into a very different 
language.  Thats why I suggested above that its ok to submit this to Scintilla 
for C (and any other Lexcpp languages that it works for) but not yet C++.  

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/1231#issuecomment-247551800

Reply via email to