summaryrefslogtreecommitdiffstats
path: root/source/slang/slang-check-decl.cpp
diff options
context:
space:
mode:
authorSai Praveen Bangaru <31557731+saipraveenb25@users.noreply.github.com>2022-11-21 10:29:57 -0500
committerGitHub <noreply@github.com>2022-11-21 10:29:57 -0500
commit545de51298ddda52ac51ded03ad489c98bdda397 (patch)
treedef78374f743d2c722fbde45eba60951a6f5c8f9 /source/slang/slang-check-decl.cpp
parentd58e08f8237a1888ceaad53402d534679ea83b1a (diff)
WIP: Fixed inout struct and added testing for calls to non-differentiable functions (#2505)
* Added non-differentiable call test * Extended testing for nondifferentiable calls * Fixed subtle issue with extensions on generic types not applying the correct substitutions, leading to unspecialized generics at the emit stage * More fixes. inout struct params now work fine * Update inout-struct-parameters-jvp.slang * Update slang-ir.cpp * Fixed hoisting lookup_interface_method * Fixed non-diff call return value * Fixed issue with phi nodes * Fixed problem with IRSpecialize preventing hoisitng of DifferentialPairType * Fixed non-diff call test to conform to the new 'no_diff' system
Diffstat (limited to 'source/slang/slang-check-decl.cpp')
-rw-r--r--source/slang/slang-check-decl.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/source/slang/slang-check-decl.cpp b/source/slang/slang-check-decl.cpp
index 009d0a987..5a1218abe 100644
--- a/source/slang/slang-check-decl.cpp
+++ b/source/slang/slang-check-decl.cpp
@@ -6024,6 +6024,13 @@ namespace Slang
// without any additional substitutions.
if (extDecl->targetType->equals(type))
{
+ /*
+ auto subst = trySolveConstraintSystem(
+ &constraints,
+ DeclRef<Decl>(extGenericDecl, nullptr).as<GenericDecl>(),
+ as<GenericSubstitution>(as<DeclRefType>(type)->declRef.substitutions.substitutions));
+ return DeclRef<Decl>(extDecl, subst).as<ExtensionDecl>();
+ */
return createDefaultSubstitutionsIfNeeded(m_astBuilder, this, extDeclRef).as<ExtensionDecl>();
}