Basile Starynkevitch <bas...@starynkevitch.net> writes:

> On Tue, 2010-06-01 at 19:49 -0500, Gabriel Dos Reis wrote:
>>     (2) we should prefer standard solution over home-grown hacks, unless
>>          there is a clear demonstration of value.  For example, it would be
>>          unwise to prefer our current VEC_xxx over std::vector.  Conversely,
>>          we should probably have our own hash table, since there is none in
>>          C++98.
>
> I am not entirely convinced of that. VEC is supported not only by
> infamous vec.h macros (which we surely want to replace by some template,
> possibly std::vec) but also by gengtype (and the Gcc Garbage Collector).

As you say, gengtype includes specific support for VEC.  Using
std::vector instead will require some work in gengtype, but not too
much.  Currently gengtype generates code like this for a VEC:

        size_t l0 = (size_t)(((*x).base).num);
        for (i0 = 0; i0 != l0; i0++) {
          if ((*x).base.vec[i0].jump_functions != NULL) {

It should be entirely feasible to make it generate std::vector
accessor functions instead.

Ian

Reply via email to