Boost logo

Boost :

From: Rene Rivera (grafikrobot_at_[hidden])
Date: 2007-10-18 16:30:01

Feel free to ignore this as it might be going off-topic...

David Abrahams wrote:
> on Wed Oct 17 2007, Rene Rivera <> wrote:
>> David Abrahams wrote:

>>> Yes, the compiler vendors have a really hard time seeing how such a
>>> feature could be implemented. The problem is that they have data
>>> structures such as symbol tables that are updated as code is parsed,
>>> and there's no way to roll them back to the state they were in before
>>> the try block if the code turns out to be ill-formed.

>> OK, that has got to be one of the lamest excuses I've heard from
>> compiler vendors so far. All the compilers I've written have had some
>> form of stacked symbol tables for the sole point of implementing scopes.
>> And this is just another scope use case.

> No, it's not.

I guess that depends on your definition of scope.

> You have to be able to undo template instantiations and
> other permanent state changes that can't be stacked.

Template instantiations go into the symbol table, like everything else.
What makes them different that they can't be undone? What other
permanent state changes are there that don't involve the symbol table?

-- Grafik - Don't Assume Anything
-- Redshift Software, Inc. -
-- rrivera/ - grafik/
-- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo

Boost list run by bdawes at, gregod at, cpdaniel at, john at