File tree Expand file tree Collapse file tree 1 file changed +15
-1
lines changed
docs/codeql/ql-language-reference Expand file tree Collapse file tree 1 file changed +15
-1
lines changed Original file line number Diff line number Diff line change @@ -123,4 +123,18 @@ You could give the predicate a more descriptive name as follows:
123
123
124
124
.. code-block :: ql
125
125
126
- predicate lessThanTen = isSmall/1;
126
+ predicate lessThanTen = isSmall/1;
127
+
128
+ .. _weak_strong_aliases :
129
+
130
+ Strong and weak aliases
131
+ =======================
132
+
133
+ Every alias is either **strong ** or **weak **.
134
+ An alias is **strong ** if and only if it is a :ref: `type alias <type-aliases >` with :ref: `annotation <annotations >`
135
+ ``final ``.
136
+ During :ref: `name resolution <name-resolution >`, ambiguity between **weak ** aliases of the same target is allowed,
137
+ but ambiguity between distinct **strong ** aliases or entities is invalid QL.
138
+ For the purpose of applicative instantiation of :ref: `parameterised modules <parameterized-modules >` and
139
+ `:ref: `parameterised module signatures <parameterized-module-signatures> `, **weak ** aliases of instantiation
140
+ arguments are considered equivalent, but distinct **strong ** aliases result in separate instantiations.
You can’t perform that action at this time.
0 commit comments