[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.tools.cdt] Symbols - [Borland support ? eclipse CDT]

Borland supports extensions to the C++ Standard, which are not (initially) known by eclipse CDT.
Also other C++ languages support specific non-standard symbols. How can eclipse CDT support these? [I don't know much about the standards and proprietary extensions, except some of the Borland extensions I know.]


Following approach was somewhat helpful:
Project->Properties->C/C++ General->Paths and Symbols->Symbols
Keep in mind, which language is selected, when you add symbols or check the checkbox "Add to all languages."
I added following symbols:
<key> - <value>
__fastcall - <blank>
__property - <blank>
__published - public
__finally - catch(...)


In order to see the problems in the code (if you don't add the symbols) configure:
Window->Preferences->C/C++->Editor->Syntax Coloring->Code->Problems
Check Enable


Problems of this approach:
* I assume we get a compile error if there is a __finally- and a catch(...)-block added to one try-block.
* The __published-properties can only be read for my own source files in my project, but not from the header-files imported from other locations (Standard Borland-files and C++header-files not in an eclipse CDT-project).
I assume the additional symbols are defined only for the scope of the files of the eclipse CDT-project, but not in the scope of all files referenced by the project (also external libraries,...).
What is affected: ** Content Assist should recognize all available instance variables, also those with __published-protection.
** Problems Syntax Highlighting: __published-instance variables should be recognized like public-instance variables.
* The definition-part of the __published-properties can not be interpreted by eclipse CDT. (example: {read=var1, write=var2})


[Comment: My imported project is fully compilable with the Borland compiler. The only problem is eclipse does not recognize that everything is free of failures in the code. But the code is not free of warnings.]

[I invite you to put solutions and hints in general for many kinds of proprietary C++ extensions and/or specific for Borland.]