Re: Private data members

Tom Tromey
2009-07-29T15:32:33Z

>>>>> "Volodya" == Vladimir Prus <vladimir@codesourcery.com> writes:

Volodya> I have run into a case when it's desirable that all
Volodya> modifications of a certain structure field in GDB codebase go
Volodya> via function that can enforce necessary invariants.

Volodya> At the moment, there are at least 3 places that directly assign
Volodya> a value to that field, and while I can convert them easily,
Volodya> nothing will prevent a direct assignment to appear in future.

In the past somebody solved this same problem for struct value by
putting the struct definition into value.c and adding a bunch of
accessors.

I'm lukewarm about this technique, but it can be made to work.

Daniel's suggested approach would also be fine with me.

If you want a real guarantee, you could write an spatch script to detect
assignments to this field, and run it periodically.

Tom