|
292 | 292 | whose type is not similar\iref{conv.qual} to
|
293 | 293 | one of the following types the behavior is
|
294 | 294 | undefined:\footnote{The intent of this list is to specify those circumstances in which an
|
295 |
| -object may or may not be aliased.} |
| 295 | +object can or cannot be aliased.} |
296 | 296 | \begin{itemize}
|
297 | 297 | \item the dynamic type of the object,
|
298 | 298 |
|
|
3932 | 3932 | \pnum
|
3933 | 3933 | An object pointer
|
3934 | 3934 | can be explicitly converted to an object pointer of a different type.\footnote{The
|
3935 |
| -types may have different \cv-qualifiers, subject to |
| 3935 | +types can have different \cv-qualifiers, subject to |
3936 | 3936 | the overall
|
3937 | 3937 | restriction that a \tcode{reinterpret_cast} cannot cast away constness.}
|
3938 | 3938 | When a prvalue \tcode{v} of object pointer type is converted to
|
|
3972 | 3972 | A prvalue of type ``pointer to member of \tcode{X} of type \tcode{T1}''
|
3973 | 3973 | can be explicitly converted to a prvalue of a different type ``pointer to member of
|
3974 | 3974 | \tcode{Y} of type \tcode{T2}'' if \tcode{T1} and \tcode{T2} are both
|
3975 |
| -function types or both object types.\footnote{\tcode{T1} and \tcode{T2} may have |
| 3975 | +function types or both object types.\footnote{\tcode{T1} and \tcode{T2} can have |
3976 | 3976 | different \cv-qualifiers, subject to
|
3977 | 3977 | the overall restriction that a \tcode{reinterpret_cast} cannot cast away
|
3978 | 3978 | constness.} The null member pointer value\iref{conv.mem} is converted to the
|
|
4572 | 4572 | potentially-overlapping subobject is
|
4573 | 4573 | the size of the type, not the size of the subobject.%
|
4574 | 4574 | \footnote{The actual size of a potentially-overlapping subobject
|
4575 |
| -may be less than the result of |
| 4575 | +can be less than the result of |
4576 | 4576 | applying \tcode{sizeof} to the subobject, due to virtual base classes
|
4577 | 4577 | and less strict padding requirements on potentially-overlapping subobjects.}
|
4578 | 4578 | \indextext{array!\idxcode{sizeof}}%
|
|
5176 | 5176 |
|
5177 | 5177 | \pnum
|
5178 | 5178 | \indextext{\idxcode{new}!exception and}%
|
5179 |
| -If any part of the object initialization described above\footnote{This may |
| 5179 | +If any part of the object initialization described above\footnote{This might |
5180 | 5180 | include evaluating a \grammarterm{new-initializer} and/or calling
|
5181 | 5181 | a constructor.}
|
5182 | 5182 | terminates by throwing an exception and a suitable deallocation function
|
|
7317 | 7317 | that is usable in constant expressions or
|
7318 | 7318 | has constant initialization\iref{basic.start.static}.%
|
7319 | 7319 | \footnote{Testing this condition
|
7320 |
| -may involve a trial evaluation of its initializer as described above.} |
| 7320 | +might involve a trial evaluation of its initializer as described above.} |
7321 | 7321 | \begin{example}
|
7322 | 7322 | \begin{codeblock}
|
7323 | 7323 | template<bool> struct X {};
|
|
7358 | 7358 |
|
7359 | 7359 | \item
|
7360 | 7360 | an immediate subexpression of a \grammarterm{braced-init-list},%
|
7361 |
| -\footnote{Constant evaluation may be necessary to determine whether a narrowing conversion is performed\iref{dcl.init.list}.} |
| 7361 | +\footnote{Constant evaluation might be necessary to determine whether a narrowing conversion is performed\iref{dcl.init.list}.} |
7362 | 7362 |
|
7363 | 7363 | \item
|
7364 | 7364 | an expression of the form \tcode{\&} \grammarterm{cast-expression}
|
7365 | 7365 | that occurs within a templated entity,%
|
7366 |
| -\footnote{Constant evaluation may be necessary to determine whether such an expression is value-dependent\iref{temp.dep.constexpr}.} |
| 7366 | +\footnote{Constant evaluation might be necessary to determine whether such an expression is value-dependent\iref{temp.dep.constexpr}.} |
7367 | 7367 | or
|
7368 | 7368 |
|
7369 | 7369 | \item
|
|
0 commit comments