This is an archive of the discontinued LLVM Phabricator instance.

Rename has{MutableFields,VolatileMember} to has{Mutable,Volatile}Subobject. NFC.
AbandonedPublic

Authored by Quuxplusone on Aug 22 2018, 3:45 PM.

Details

Reviewers
shafik
Summary

Rename HasMutableFields to HasMutableSubobject for accuracy.

This bitflag is set whenever the record type has a mutable subobject,
regardless of whether that subobject is a direct member, or a member
of some base class, or a member of a member, etc. etc.
It does not need to be a field of the record type itself.

Rename HasVolatileMember to HasVolatileSubobject for accuracy.

This bitflag is set whenever the record type has a volatile subobject,
regardless of whether that subobject is a direct member, or a member
of some base class, or a member of a member, etc. etc.
It does not need to be a member of the record type itself.

Generally in C++ if we have

struct A { mutable int m; };
struct B { A a; };

we say that a is a "member" or "field" of B; m is a "subobject" of B; but m is neither a "member" nor a "field" of B.

The current naming of these accessors confused me for a little while during the development of a different patch, so I thought I'd submit a diff renaming them after what they actually do, and see if anyone thought it was a good idea. (I don't have commit privs.)

Diff Detail

Repository
rC Clang