Re: [ROOT] ROOT 2.25.01: CINT template bug affecting all STL containers

From: Rene Brun (Rene.Brun@cern.ch)
Date: Thu Aug 17 2000 - 08:33:59 MEST


Hi Matt,
Being an experienced C++ user with templates, I think you are the ideal
candidate to provide the test suite you are talking about.
If you develop it, I will be pleased to add it to our standard Root test suite.

Rene Brun

Matthew D. Langston wrote:
> 
> I've come across a CINT bug in ROOT 2.25.01 that affects all STL
> containers that depend on the "construct" template function (which, to
> my knowledge, is all STL containers).  The nature of the bug looks like
> it is an CINT internal compiler error, as CINT can't handle the
> "construct" template function in "cint/stl/defalloc.h" (line 120).
> 
> I've attached a small test file (called "test_vector.C") that
> demonstrates the problem.  The problem does not appear in ROOT 2.24.05
> (i.e. "test_vector.C" and the rest of my template and STL code runs fine
> with ROOT 2.24.05).  This is the error I get from ROOT 2.25.01:
> 
>   root [0] .x test_vector.C
>   Error: Undeclared variable value FILE:defalloc.h LINE:120
>   *** Interpreter error recovered ***
>   root [1]
> 
> This is the C++ template code (from "cint/stl/defalloc.h) that CINT is
> having trouble with:
> 
>   template <class T1, class T2>
>   inline void construct(T1* p, const T2& value) {
>       new (p) T1(value);
>   }
> 
> Perhaps this is a good time to make another request for a ROOT test
> suite.  If ROOT had such a test suite, then code like "test_vector.C"
> could be put into it so that future releases of ROOT don't introduce
> bugs that were fixed in previous releases.  Perhaps ROOT could start
> with the gcc/g++ test suite.  Although CINT only promises to support 85%
> of C++, it would at least let ROOT users know specifically what that 15%
> of C++ we can't use is.
> 
> Regards, Matt
> 
> --
> Matthew D. Langston
> SLD, Stanford Linear Accelerator Center
> langston@SLAC.Stanford.EDU
> 
>   --------------------------------------------------------------------------------
> 
>    Part 1.2       Type: Plain Text (text/plain)
>               Encoding: 7BIT



This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:31 MET