[Geany-Devel] C++ Header Extension (was Re: DevynCJohnson's Ideas (November))

Lex Trotman elextr at xxxxx
Sun Nov 8 22:58:02 UTC 2015


On 9 November 2015 at 08:09, Jiří Techet <techet at gmail.com> wrote:
>
>
> On Sun, Nov 8, 2015 at 6:29 PM, Matthew Brush <mbrush at 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 at 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.

Indeed, in fact that happened with Geany in the past, one of the
headers used "template" (now changed to "temp") as a parameter name,
so it was not possible to make C++ plugins since that header couldn't
be included in C++.

>
> Cheers,
>
> Jiri
>
> _______________________________________________
> Devel mailing list
> Devel at lists.geany.org
> https://lists.geany.org/cgi-bin/mailman/listinfo/devel
>


More information about the Devel mailing list