|
837 | 837 | \begin{itemize} |
838 | 838 | \item If \tcode{D} is a class with an implicitly-declared |
839 | 839 | constructor\iref{class.default.ctor,class.copy.ctor}, |
840 | | -it is as if the constructor was |
| 840 | +it is as if the constructor were |
841 | 841 | implicitly defined in every translation unit where it is odr-used, and the |
842 | 842 | implicit definition in every translation unit shall call the same |
843 | 843 | constructor for a subobject of \tcode{D}. |
|
870 | 870 |
|
871 | 871 | \item If \tcode{D} is a class with |
872 | 872 | a defaulted three-way comparison operator function\iref{class.spaceship}, |
873 | | -it is as if the operator was |
| 873 | +it is as if the operator were |
874 | 874 | implicitly defined in every translation unit where it is odr-used, and the |
875 | 875 | implicit definition in every translation unit shall call the same |
876 | 876 | comparison operators for each subobject of \tcode{D}. |
|
891 | 891 | default template arguments of either \tcode{D} or |
892 | 892 | an entity not defined within \tcode{D}). |
893 | 893 | For each such entity and for \tcode{D} itself, |
894 | | -the behavior is as if there is a single entity with a single definition, |
| 894 | +the behavior is as if there were a single entity with a single definition, |
895 | 895 | including in the application of these requirements to other entities. |
896 | 896 | \begin{note} |
897 | 897 | The entity is still declared in multiple translation units, and \ref{basic.link} |
|
921 | 921 |
|
922 | 922 | If the definition of \tcode{f} appears in multiple translation units, |
923 | 923 | the behavior of the program is as if |
924 | | -there is only one definition of \tcode{f}. |
| 924 | +there were only one definition of \tcode{f}. |
925 | 925 | If the definition of \tcode{g} appears in multiple translation units, |
926 | 926 | the program is ill-formed (no diagnostic required) because |
927 | 927 | each such definition uses a default argument that |
|
2007 | 2007 | When a class scope is searched, |
2008 | 2008 | the scopes of its base classes are also searched\iref{class.member.lookup}. |
2009 | 2009 | If it inherits from a single base, |
2010 | | -it is as if the scope of the base immediately contains |
| 2010 | +it is as if the scope of the base immediately contained |
2011 | 2011 | the scope of the derived class. |
2012 | 2012 | Template parameter scopes |
2013 | 2013 | that are associated with one scope in the chain of parents |
|
7581 | 7581 | of the second is sequenced before the initiation of the destruction of the first. |
7582 | 7582 | If an object is |
7583 | 7583 | initialized statically, the object is destroyed in the same order as if |
7584 | | -the object was dynamically initialized. |
| 7584 | +the object were dynamically initialized. |
7585 | 7585 | If the destruction of an object with static or thread storage duration |
7586 | 7586 | exits via an exception, |
7587 | 7587 | the function \tcode{std::terminate} is called\iref{except.terminate}. |
|
7980 | 7980 | invoked from the evaluation of a function contract assertion\iref{dcl.contract.func} |
7981 | 7981 | exits via an exception, |
7982 | 7982 | the behavior is as if |
7983 | | -the function body exits via that same exception. |
| 7983 | +the function body exited via that same exception. |
7984 | 7984 | \begin{note} |
7985 | 7985 | A \grammarterm{function-try-block}\iref{except.pre} |
7986 | 7986 | is the function body when present |
|
0 commit comments