diff options
author | metagn <metagngn@gmail.com> | 2024-09-04 10:13:28 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-04 09:13:28 +0200 |
commit | c314155fb37ef7dbd8a7de0df7e8b9d9b61f4802 (patch) | |
tree | d10a8578c4cb5bd1129bf220e95f0b548a5061ee /changelog.md | |
parent | f69809bb1762da92ec83df023a9d4740a54e4335 (diff) | |
download | Nim-c314155fb37ef7dbd8a7de0df7e8b9d9b61f4802.tar.gz |
document partial generics breaking changes (#24055)
refs #24010, split from #24051
Diffstat (limited to 'changelog.md')
-rw-r--r-- | changelog.md | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/changelog.md b/changelog.md index 541bbd6eb..6c06e2913 100644 --- a/changelog.md +++ b/changelog.md @@ -28,6 +28,19 @@ errors for ambiguous type symbols, and macros operating on generic proc AST may encounter symchoice nodes instead of the arbitrarily resolved type symbol nodes. +- Partial generic instantiation of routines is no longer allowed. Previously + it compiled in niche situations due to bugs in the compiler. + + ```nim + proc foo[T, U](x: T, y: U) = echo (x, y) + proc foo[T, U](x: var T, y: U) = echo "var ", (x, y) + + proc bar[T]() = + foo[float](1, "abc") + + bar[int]() # before: (1.0, "abc"), now: type mismatch, missing generic parameter + ``` + ## Standard library additions and changes [//]: # "Changes:" |