|
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
|
|
3970 | 3970 | A prvalue of type ``pointer to member of \tcode{X} of type \tcode{T1}''
|
3971 | 3971 | can be explicitly converted to a prvalue of a different type ``pointer to member of
|
3972 | 3972 | \tcode{Y} of type \tcode{T2}'' if \tcode{T1} and \tcode{T2} are both
|
3973 |
| -function types or both object types.\footnote{\tcode{T1} and \tcode{T2} may have |
| 3973 | +function types or both object types.\footnote{\tcode{T1} and \tcode{T2} can have |
3974 | 3974 | different \cv-qualifiers, subject to
|
3975 | 3975 | the overall restriction that a \tcode{reinterpret_cast} cannot cast away
|
3976 | 3976 | constness.} The null member pointer value\iref{conv.mem} is converted to the
|
|
4570 | 4570 | potentially-overlapping subobject is
|
4571 | 4571 | the size of the type, not the size of the subobject.%
|
4572 | 4572 | \footnote{The actual size of a potentially-overlapping subobject
|
4573 |
| -may be less than the result of |
| 4573 | +can be less than the result of |
4574 | 4574 | applying \tcode{sizeof} to the subobject, due to virtual base classes
|
4575 | 4575 | and less strict padding requirements on potentially-overlapping subobjects.}
|
4576 | 4576 | \indextext{array!\idxcode{sizeof}}%
|
|
5171 | 5171 |
|
5172 | 5172 | \pnum
|
5173 | 5173 | \indextext{\idxcode{new}!exception and}%
|
5174 |
| -If any part of the object initialization described above\footnote{This may |
| 5174 | +If any part of the object initialization described above\footnote{This might |
5175 | 5175 | include evaluating a \grammarterm{new-initializer} and/or calling
|
5176 | 5176 | a constructor.}
|
5177 | 5177 | terminates by throwing an exception and a suitable deallocation function
|
|
7310 | 7310 | that is usable in constant expressions or
|
7311 | 7311 | has constant initialization\iref{basic.start.static}.%
|
7312 | 7312 | \footnote{Testing this condition
|
7313 |
| -may involve a trial evaluation of its initializer as described above.} |
| 7313 | +might involve a trial evaluation of its initializer as described above.} |
7314 | 7314 | \begin{example}
|
7315 | 7315 | \begin{codeblock}
|
7316 | 7316 | template<bool> struct X {};
|
|
7351 | 7351 |
|
7352 | 7352 | \item
|
7353 | 7353 | an immediate subexpression of a \grammarterm{braced-init-list},%
|
7354 |
| -\footnote{Constant evaluation may be necessary to determine whether a narrowing conversion is performed\iref{dcl.init.list}.} |
| 7354 | +\footnote{Constant evaluation might be necessary to determine whether a narrowing conversion is performed\iref{dcl.init.list}.} |
7355 | 7355 |
|
7356 | 7356 | \item
|
7357 | 7357 | an expression of the form \tcode{\&} \grammarterm{cast-expression}
|
7358 | 7358 | that occurs within a templated entity,%
|
7359 |
| -\footnote{Constant evaluation may be necessary to determine whether such an expression is value-dependent\iref{temp.dep.constexpr}.} |
| 7359 | +\footnote{Constant evaluation might be necessary to determine whether such an expression is value-dependent\iref{temp.dep.constexpr}.} |
7360 | 7360 | or
|
7361 | 7361 |
|
7362 | 7362 | \item
|
|
0 commit comments