diff options
author | Araq <rumpf_a@web.de> | 2015-03-09 15:02:28 +0100 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2015-03-10 12:32:46 +0100 |
commit | 1efb5174f26caeebafe1b5ea9487690c5ffe1adb (patch) | |
tree | 90b292c6f6b2c45b24b26b9202fc9e13d0035298 /tests/overload/tprefer_specialized_generic.nim | |
parent | 3ea3aa633d92e9a9c3f4668727c194cfae3ce7c4 (diff) | |
download | Nim-1efb5174f26caeebafe1b5ea9487690c5ffe1adb.tar.gz |
fixes #2220; #2219; breaks #2022; for #2022 callsite needs to be used
Diffstat (limited to 'tests/overload/tprefer_specialized_generic.nim')
-rw-r--r-- | tests/overload/tprefer_specialized_generic.nim | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/overload/tprefer_specialized_generic.nim b/tests/overload/tprefer_specialized_generic.nim new file mode 100644 index 000000000..2b41502d1 --- /dev/null +++ b/tests/overload/tprefer_specialized_generic.nim @@ -0,0 +1,22 @@ +discard """ + output: '''ref ref T ptr S''' +""" + +proc foo[T](x: T) = + echo "only T" + +proc foo[T](x: ref T) = + echo "ref T" + +proc foo[T, S](x: ref ref T; y: ptr S) = + echo "ref ref T ptr S" + +proc foo[T, S](x: ref T; y: ptr S) = + echo "ref T ptr S" + +proc foo[T](x: ref T; default = 0) = + echo "ref T; default" + +var x: ref ref int +var y: ptr ptr int +foo(x, y) |