From: Martin Sebor Date: Thu, 18 Jan 2018 16:26:14 +0000 (+0000) Subject: Be clear about virtual table pointer corruptuion rather than the vtable itself. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8ca07d928cedce021d7ebbe1f5e0f71e92193a5c;p=gcc.git Be clear about virtual table pointer corruptuion rather than the vtable itself. From-SVN: r256852 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fcbd840a707..d1679f4320b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2018-01-18 Martin Sebor + + * doc/invoke.texi (-Wclass-memaccess): Tweak text. + 2018-01-18 Jan Hubicka PR ipa/83619 diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 8c1d9b3c652..27c597492be 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -2970,11 +2970,11 @@ Warn when the destination of a call to a raw memory function such as @code{memset} or @code{memcpy} is an object of class type, and when writing into such an object might bypass the class non-trivial or deleted constructor or copy assignment, violate const-correctness or encapsulation, or corrupt -the virtual table. Modifying the representation of such objects may violate -invariants maintained by member functions of the class. For example, the call -to @code{memset} below is undefined because it modifies a non-trivial class -object and is, therefore, diagnosed. The safe way to either initialize or -clear the storage of objects of such types is by using the appropriate +virtual table pointers. Modifying the representation of such objects may +violate invariants maintained by member functions of the class. For example, +the call to @code{memset} below is undefined because it modifies a non-trivial +class object and is, therefore, diagnosed. The safe way to either initialize +or clear the storage of objects of such types is by using the appropriate constructor or assignment operator, if one is available. @smallexample std::string str = "abc";