Revision 763857

Go back to digest for 27th January 2008

Bug Fixes in Development Tools

David Nolden committed changes in /trunk/KDE/kdevelop/languages/cpp:

- Correctly manage macro-blocks, deleting them when they aren't needed any more.
- Fix a bug in the environment-manager, which makes it more correct. However this increases memory-usage by creating more contexts, so we will need more optimization
- With simplified environment-matching enabled, correctly support files that define completely different content depending on a macro in the header-section, by tracking the preprocessor branching-hash while creating the content-context.
- Add a test for this to test_cppcodecompletion.
- Share include-path lists to save some memory
- Store the content start-line(behind includes) in environment-files. This will give us a place to automatically add new includes, definitions, etc.

File Changes

Modified 10 files
  • /trunk/KDE/kdevelop/languages/cpp
  •   /preprocessjob.cpp
  •   /preprocessjob.h
  •   /cppduchain/cpppreprocessenvironment.cpp
  •   /cppduchain/cpppreprocessenvironment.h
  •   /cppduchain/environmentmanager.cpp
  •   /cppduchain/environmentmanager.h
  •   /cppduchain/setrepository.h
  •   /parser/parsesession.cpp
  •   /parser/parsesession.h
  •   /tests/test_cppcodecompletion.cpp
10 files changed in total