Yes, the two main uses that I haven’t
seen a good workaround is with header files as Markus mentions below, and with
managed make which needs to link in the C++ runtime, or use a C++ specific
linker if there are C++ files in the project.
One option would be to scan the resources
in a project and look for C++ content types to do this behaviour, but my guess
is that would be as painful as the Binary Parser is now J.
From:
cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Schorn,
Markus
Sent: Tuesday, July 11, 2006 8:36
AM
To: CDT
General developers list.
Subject: RE: [cdt-dev] c/cpp
projects and content-types
In CDT various techniques
are used to figure out whether to treat (parse, highlight, ..) a file as c- or
c++ file. Some of them seem
to be workarounds for the problem that content-types use case insensitive
file patterns. (*.c vs *.C).
I think we should rely on
the content type as much as possible. I just want to compute it smarter by
preferring case-sensitive matches over insensitive ones.
However, whatever we
do, a conflict will remain for the *.h files as the extension is used for
both c and
c++-code. We can use the
C++project nature to determine the language of *.h-files. In a mixed setup
I would parse headers as
C++, it's usually the better choice. So mixed projects should use the C++
nature.
The C++-project nature then
will be a synonym for
"Assume that *.h-files contain c++ code."
and can probaly be better
replaced by a project preference.
Markus.
From:
cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Sennikovsky, Mikhail
Sent: Dienstag, 11. Juli 2006
13:29
To: CDT
General developers list.
Subject: RE: [cdt-dev] c/cpp
projects and content-types
#1 makes more sense to me from the current perspective. And this is
actually how MBS gnu tool-chain is currently defined: Managed Make Gnu C++
projects by default allow having both C and C++ sources currently, while Gnu C
projects allow C only.
Note that generally it is possible that the C or C++ projects
contain some other language, e.g. FORTRAN. In this sense the project nature
should be used for identifying the primary language only, while the language
should be determined based upon the file name (i.e. file extension) given the
content type and/or some other info. We’re going to stick to this
approach in the future to allow multi- and mixed- language support in CDT.
Talking of C and C++ I think it is reasonable to have one type of
project for supporting both C and C++ in the future.
Are there any specific requirements for the content type bugs
you’re working on that require the pre-defined list of supported
languages?
Mikhail
From:
cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Schorn,
Markus
Sent: Tuesday, July 11, 2006 1:57
PM
To: CDT
General developers list.
Subject: [cdt-dev] c/cpp projects
and content-types
Hi,
I
am fixing bugs related to the content types. I am confused about the meaning of
c- vs. c++ projects.
Which
one is correct?
Interpretation
1:
c-project
allows for plain c, only.
c++-project
must be used for c++-code or mixed setups.
Interpretation
2:
c++-project
allows for c++, only.
c-project
must be used for c-code or mixed setups.
Markus.
From:
cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Leherbauer, Anton
Sent: Dienstag, 11. Juli 2006
09:37
To: CDT
General developers list.
Subject: RE: [cdt-dev] Please
accept my contributions to C/C++ editor
Sergey,
thanks
for the patches.
I'll
have a look.
Toni
From:
cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Sergey Prigogin
Sent: Monday, July 10, 2006 8:39
PM
To: CDT
General developers list.
Subject: [cdt-dev] Please accept
my contributions to C/C++ editor
Bugzillas 148582 and 140489 contain
patches implementing "smart indenting" and "smart caret positioning"
in C/C++ Editor. Could please somebody take a look at these patches and apply
them to the HEAD. Thanks a loot.
-Sergey