### CINT

This version contains no major new features. CINT7 has seen considerable speed improvements; only bug fixes were incorporated in the other packages. CINT5 or 7 can now be configured independently; `--enable-cint5 --disable-cint7` is the default. New web site for ROOT's interpreters and dictionaries and stand-alone CINT as well as Reflex.

- CINT5 and CINT7
  - Improve the platform independence of paths.
  - Fix the lookup of types nested in classes with default template parameters.
  - `.Lk macro.C` will load the file macro.C only if it is not currently loaded. `.L macro.C` would unload it and all files that have been loaded later, and then reload it. Also implemented `.xk macro.C`.
  - Fix for recursive loading (e.g. autoloading) of libraries during dictionary initialization.
  - Fix parsing of negative values that are larger than int.
  - Create the proper short name for templates with templated default arguments: `a<b<c>,d=e>` was shortened to `a<b<c>>` instead of `a<b<c> >`.
  - Add missing `complex<T>` functions (thanks, Daniel Barna!).
  - Improve the casting from (free) function pointer to void* in dictionaries using a union.
  - Support `_attribute_` in the parser (by ignoring it).
  - Do not convert path names to lower case anymore.
  - Support const static data members with inline initialization: `class A{static const int i=42;};`
- CINT5
  - The include files are moved back from `include/cint/` to `include/` for backward compatibility reasons. CINT7's headers remain in `include/cint7`.
- CINT7
  - Major improvements in the CPU performance of CINT7; it is now much faster (> factor 5 for interpreting stress.cxx)
  - Fixes for const correctness of CINT's code, especially for const char*.
  - Added support for autoloading typedefs.
  - Fix issue with G__struct being initialized too late.
  - Properly identify the library that a dictionary belongs to.
  - Fix compiler warnings.
  - Fix dictionary for `abs()`.
  - Reduce memory usage by reimplementing some internal data structures.
- Reflex
  - Full support for ClassDef() macros with the full benefits of faster I/O due to a direct access instead of a search in a map for writing out objects.
  - Reimplement `UpdateMembers()` and `PathToBase()` in a backward compatible way. The Member getters now support an enum argument (`Reflex::INHERITEDMEMBERS_NO` or `Reflex::INHERITEDMEMBERS_ALSO`) to request only the class's member or also inherited members. This allows to ignore possible calls to `UpdateMembers()`. The default value for this argument to the member getters is `Reflex::INHERITEDMEMBERS_DEFAULT` which will behave like `Reflex::INHERITEDMEMBERS_NO` until the first call to `UpdateMembers()`.
  - Fix visibility of UnionBuilder's symbols (GCC, MSVC)
  - Fix for unnamed types in genreflex.
  - genreflex got fixed for functions taking arrays or pointers thereof.
  - Many and improvements to the test suite, many new tests.
  - Further improvements to genreflex support of TObject derived classes / classes implementing the ClassDef macro.
  - Complain if a class derives from TObject but does not use ClassDef
  - Fix constness and scope of the return type of shadows' final overrider
  - FunctionTypeBuilder does not delete existing types anymore.
  - For derived types (array, typedef), delay the calculation of SizeOf() until the underlying type is know.
  - Added a CMake macro REFLEX_ADD_DICTIONARY for the dictionary creation, to be used by external packages.
  - Fix for unsigned long template parameters (`A<unsigned long>` which GCCXML instantiates as e.g. `A<12ul>`); fixes an issue with boost::array.
  - Added MSVC8 to genreflex's list of supported compilers, fix build for MSVC7.1.
  - Remove stray spaces after `string` in rootmap files.
  - Use qualified types for Reflex types instead of `using namespace Reflex`.
  - Allow selection of genreflex classes and their members via a typedef-to-class.
  - Implement new genreflex option `--gccxmlpost` to postprocess a GCC_XML output file with genreflex, useful for debugging.
  - Remove dictionaries for PropertyList methods that had been deprecated for years.
  - Suppress dictionaries for unnamed enums.
  - Satisfy python 2.6.2 and silence its warnings.
  - Rename GCC_XML output file to *_gccxmlout.xml, so it is easier to distinguish it from selection.xml file.
  - Improve the initialization and shutdown of Reflex; remove the memory leaks due to the reflection containers not beeing cleared at the end of the process.
  - Modified the behavior of Reflex dictionary (namely ClassBuilder). Rather than unconditionally erasing existing information, a 2nd ClassBuilder will either add new information or check that it is compatible with the existing information (and throwing an exception in case of problems). To be able to over-ride an existing definition, unload the class before calling ClassBuilder.
  - Also create dictionaries for const static data members.
- Cintex
  - Follow changes in ROOT's CollectionProxy interface.
  - Don't cache Reflex::Member for functions' return types in the stubs; fixes an issue caused by duplicated dictionaries.
  - Add dictionary for basic_string<char> for backward compatibility.