On Sun, Nov 8, 2015 at 6:29 PM, Matthew Brush <mbrush@codebrainz.ca> wrote:


On 2015-11-08 12:25 PM, Matthew Brush wrote:


On 2015-11-08 3:19 PM, Lex Trotman wrote:
On 9 November 2015 at 05:34, Devyn Collier Johnson
<devyncjohnson@gmail.com> wrote:
[...]
- Adding "*.i;" to "C="
*.i - C source code which should not be preprocessed
http://labor-liber.org/en/gnu-linux/development/extensions

g++ treats this as C++, all languages are *not* C :)

This is the same problem as .h, it could be either.


I've been meaning to bring this up. We should move *.h to C++ now that
C++ can use C tags. Having it under C means C++ headers don't work, but
having it under C++ works for both C and C++ headers.


Oops, I forgot the tags from the C++ header wouldn't be visible in C files (the opposite is not true). I still think *.h should be for C++, but it's probably a hard sell for Geany crowd, it being written in plain C and all :)

I made it the opposite way too here (to be fully reviewed/merged):

https://github.com/techee/geany/commit/5c18b3d1328b8d3dff923a2a02bc3cc6b41a333c

see the langs_compatible() function. I would personally also like what you suggest but another problem is that e.g. a C variable named "template"(plus all the extra keywords C++ has) could screw up the parsing.

Cheers,

Jiri