Skip to content

Commit

Permalink
State that external objects must not depend on themselves.
Browse files Browse the repository at this point in the history
  • Loading branch information
HansOlsson committed Feb 19, 2021
1 parent c668500 commit e66eace
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions chapters/functions.tex
Expand Up @@ -2470,8 +2470,9 @@ \subsection{External Objects}\label{external-objects}
\lstinline!ExternalObject!. It is not legal to call explicitly the \lstinline!constructor! and
\lstinline!destructor! functions. The constructor shall initialize the object, and
must not require any other calls to be made for the initialization to
be complete (e.g., from an initial algorithm or initial equation). The
destructor shall delete the object, and must not require any other
be complete (e.g., from an initial algorithm or initial equation).
The arguments to the constructor must not – directly nor indirectly – depend on the external object being constructed.
The destructor shall delete the object, and must not require any other
calls to be made for the deletion to be complete (e.g., from a \lstinline!when terminal()! clause). The constructor shall not assume that pointers sent
to the external object will remain valid for the life-time of the external object. An exception is that if the pointer to another external object is
given as argument to the constructor, that pointer will remain valid as long as the other external object lives.
Expand Down

0 comments on commit e66eace

Please sign in to comment.