Skip to content

Commit 64de872

Browse files
authored
Adjust the specification of the dynamic error for p.f(...) where p is a deferred import prefix (#3483)
1 parent 299d20b commit 64de872

File tree

1 file changed

+12
-4
lines changed

1 file changed

+12
-4
lines changed

specification/dartLangSpec.tex

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,11 @@
4141
% version of the language which will actually be specified by the next stable
4242
% release of this document.
4343
%
44+
% Nov 2023
45+
% - Specify that the dynamic error for calling a function in a deferred and
46+
% not yet loaded library will occur before actual argument evaluation, not
47+
% after.
48+
%
4449
% Oct 2023
4550
% - Introduce the rule that an `extension` declaration cannot have the name
4651
% `type`. This is needed in order to disambiguate an `extension type`
@@ -20014,9 +20019,11 @@ \subsubsection{Semantics of Imports}
2001420019
\NamespaceName{\metavar{import},i},
2001520020
a corresponding function named \id{} with the same signature as $f$.
2001620021
% This error can occur because being-loaded is a dynamic property.
20017-
Calling the function results in a dynamic error,
20018-
and so does closurizing it
20019-
(\ref{functionClosurization}).
20022+
Calling the function results in a dynamic error that occurs before
20023+
any actual arguments are evaluated.
20024+
Closurizing the function
20025+
(\ref{functionClosurization})
20026+
also results in a dynamic error.
2002020027
\item
2002120028
For every top level getter $g$ named \id{} in
2002220029
\NamespaceName{\metavar{import},i},
@@ -20028,7 +20035,8 @@ \subsubsection{Semantics of Imports}
2002820035
\NamespaceName{\metavar{import},i},
2002920036
a corresponding setter named \code{\id=} with the same signature as $s$.
2003020037
% This error can occur because being-loaded is a dynamic property.
20031-
Calling the setter results in a dynamic error.
20038+
Calling the setter results in a dynamic error that occurs before
20039+
the actual argument is evaluated.
2003220040
\item
2003320041
For every class, mixin, enum, and type alias declaration named \id{} in
2003420042
\NamespaceName{\metavar{import},i},

0 commit comments

Comments
 (0)