From e8217c70072080e9d1f499cb670cc08f146818f2 Mon Sep 17 00:00:00 2001 From: Julius Ikkala Date: Fri, 10 Jan 2025 03:24:00 +0200 Subject: Fix implicit string conversion breaking NativeStrings (#6035) * Fix implicit string conversion breaking NativeStrings * Allow string literals to coerce to either string type * Add test for CPU string passing --------- Co-authored-by: Yong He --- source/slang/core.meta.slang | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'source/slang/core.meta.slang') diff --git a/source/slang/core.meta.slang b/source/slang/core.meta.slang index adb7470dd..f0324ba1a 100644 --- a/source/slang/core.meta.slang +++ b/source/slang/core.meta.slang @@ -1463,6 +1463,11 @@ struct String __intrinsic_op($(kIROp_MakeString)) __init(double val); + [require(cpp)] + __implicit_conversion($(kConversionCost_None)) + __intrinsic_op($(kIROp_MakeString)) + __init(NativeString value); + /// Returns the length of the string. [require(cpp)] int64_t getLength(); @@ -1502,6 +1507,7 @@ struct NativeString property int length { [__unsafeForceInlineEarly] get{return getLength();} } + __implicit_conversion($(kConversionCost_None)) __intrinsic_op($(kIROp_getNativeStr)) __init(String value); }; -- cgit v1.2.3