From 17d2b2492d42e54ea4e0d907b4d84aa17f4a6f33 Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Tue, 2 Feb 2021 17:45:56 -0500 Subject: Downstream compiler line number test (#1682) * #include an absolute path didn't work - because paths were taken to always be relative. * WIP diagnostics for line number output. * Small param naming change * Use x macro for pass through compile human name lookup/getting. * WIP on parsing downstream compiler output. * Split out parsing into ParseDiagnosticUtil. Added test result of single line. * Dump out the std output on fail to parse diagnostics. * Change test type for syntax-error-intrinsic.slang be TEST not TEST_DIAGNOSTIC --- source/slang/core.meta.slang | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'source/slang') diff --git a/source/slang/core.meta.slang b/source/slang/core.meta.slang index 9fecc7661..a60da422c 100644 --- a/source/slang/core.meta.slang +++ b/source/slang/core.meta.slang @@ -1914,12 +1914,19 @@ ${{{{ }}}} - // Specialized function __intrinsic_op int getStringHash(String string); +// Use will produce a syntax error in downstream compiler +// Useful for testing diagnostics around compilation errors of downstream compiler +__target_intrinsic(hlsl, " @ ") +__target_intrinsic(glsl, " @ ") +__target_intrinsic(cuda, " @ ") +__target_intrinsic(cpp, " @ ") +void __SyntaxError(); + // Operators to apply to `enum` types __generic @@ -2084,4 +2091,4 @@ __attributeTarget(DeclBase) attribute_syntax [__requiresNVAPI] : RequiresNVAPIAttribute; __attributeTarget(FunctionDeclBase) -attribute_syntax [noinline] : NoInlineAttribute; \ No newline at end of file +attribute_syntax [noinline] : NoInlineAttribute; -- cgit v1.2.3