summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2024-04-01 18:45:21 -0700
committerGitHub <noreply@github.com>2024-04-01 18:45:21 -0700
commitdaf63cc983fd5f8f2b24872a9125e0394ed2180e (patch)
treeafd3a680931926e80a5c574dd63443b531810465 /tests
parentabb7f1a7790544010d6eaac0f137e6b39349cf76 (diff)
Fix static member lookup in pointer types. (#3869)
Diffstat (limited to 'tests')
-rw-r--r--tests/language-feature/extensions/ptr-extension.slang14
-rw-r--r--tests/language-feature/extensions/ptr-extension.slang.expected6
2 files changed, 20 insertions, 0 deletions
diff --git a/tests/language-feature/extensions/ptr-extension.slang b/tests/language-feature/extensions/ptr-extension.slang
new file mode 100644
index 000000000..4dd755185
--- /dev/null
+++ b/tests/language-feature/extensions/ptr-extension.slang
@@ -0,0 +1,14 @@
+//TEST:EXECUTABLE:
+__generic<T> extension Ptr<T> {
+ static func FromHandle(uint64_t handle) -> Ptr<T> {
+ return (Ptr<T>)handle;
+ }
+}
+
+__extern_cpp export
+func main() -> int
+{
+ let x = Ptr<int>::FromHandle(0ull);
+ printf("%d\n", (int)x);
+ return 0;
+} \ No newline at end of file
diff --git a/tests/language-feature/extensions/ptr-extension.slang.expected b/tests/language-feature/extensions/ptr-extension.slang.expected
new file mode 100644
index 000000000..f2ceb249b
--- /dev/null
+++ b/tests/language-feature/extensions/ptr-extension.slang.expected
@@ -0,0 +1,6 @@
+result code = 0
+standard error = {
+}
+standard output = {
+0
+}