Skip to content

Commit c769d82

Browse files
committed
Correct wrong rebase update
1 parent 970a7b7 commit c769d82

File tree

1 file changed

+2
-32
lines changed

1 file changed

+2
-32
lines changed

specification/dartLangSpec.tex

Lines changed: 2 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -22240,36 +22240,6 @@ \subsubsection{Being a Subtype}
2224022240
each of the premises of $R$,
2224122241
continuing until a rule with no premises is reached.
2224222242

22243-
\commentary{%
22244-
For rule \SrnNull, note that the \code{Null} type
22245-
is a subtype of all non-$\bot$ types,
22246-
even though it doesn't actually extend or implement those types.
22247-
The other types are effectively treated as if they were nullable,
22248-
which makes the null object (\ref{null}) assignable to them.%
22249-
}
22250-
22251-
\LMHash{}%
22252-
The first premise in the
22253-
rules~\SrnLeftTypeAlias{} and~\SrnRightTypeAlias{}
22254-
is a type alias declaration.
22255-
This premise is satisfied in each of the following situations:
22256-
22257-
\begin{itemize}
22258-
\item A non-generic type alias named $F$ is declared.
22259-
In this case $s$ is zero,
22260-
no assumptions are made about the existence
22261-
of any formal type parameters,
22262-
and actual type argument lists are omitted everywhere in the rule.
22263-
\item We may choose $s$ and \List{X}{1}{s} such that the following holds:
22264-
A generic type alias named $F$ is declared,
22265-
with formal type parameters \List{X}{1}{s}.
22266-
\commentary{%
22267-
Each formal type parameter $X_j$ may have a bound,
22268-
but the bounds are never used in this context,
22269-
so we do not introduce metavariables for them.%
22270-
}
22271-
\end{itemize}
22272-
2227322243
\LMHash{}%
2227422244
Rule~\SrnRightFunction{} has as a premise that `$T$ is a function type'.
2227522245
This means that $T$ is a type of one of the forms introduced in
@@ -22307,14 +22277,14 @@ \subsubsection{Being a Subtype}
2230722277
}
2230822278

2230922279
\commentary{%
22310-
The last premise of rule~\SrnSuperinterface{}
22280+
The last premise of rule~\SrnNominal{}
2231122281
substitutes the actual type arguments \List{S}{1}{s} for the
2231222282
formal type parameters \List{X}{1}{s},
2231322283
because \List{T}{1}{m} may contain those formal type parameters.%
2231422284
}
2231522285

2231622286
\commentary{%
22317-
The rules~\SrnCovariance{} and~\SrnSuperinterface{}
22287+
The rules~\SrnCovariance{} and~\SrnNominal{}
2231822288
are applicable to interfaces,
2231922289
but they can be used with classes as well,
2232022290
because a non-generic class $C$ which is used as a type

0 commit comments

Comments
 (0)