$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Gennadiy Rozental (gennadiy.rozental_at_[hidden])
Date: 2003-04-05 00:20:12
> I argue that top-level const type arguments are meaningless in the context
> of variant. Given the example you provide:
>
> typedef boost::variant<int const, std::string const> GlobalParameter;
>
> GlobalParameter input_socket(12345);
> input_socket = 54321; // no way to prevent this!!
How come!? It should be very easy to prohibit all mutating operations for
variant once it has top level const bound types (with static asserts)
> We can put it in the docs, but it seems straightforward that a const
variant
> would, in fact, not allow modification. What reason would lead someone to
> believe otherwise?
No. I meant that: Would we decide to keep the current semantic (without top
level const) we need to say explecetly what to do to define variant type for
constant object.
Gennadiy