From 0dd6b4e57d6c7248f7fc44d19081feab4fa8c01f Mon Sep 17 00:00:00 2001 From: acheron <98934430+acheroncrypto@users.noreply.github.com> Date: Wed, 17 Jul 2024 22:44:21 +0200 Subject: [PATCH] lang: Add a sanity check for unimplemented token extensions (#3090) --- CHANGELOG.md | 1 + lang/syn/src/codegen/accounts/constraints.rs | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 82a70b3b6c..51a0b5e3af 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,7 @@ The minor version will be incremented upon a breaking change and the patch versi - lang: Remove `getrandom` dependency ([#3072](https://github.com/coral-xyz/anchor/pull/3072)). - lang: Make `InitSpace` support unnamed & unit structs ([#3084](https://github.com/coral-xyz/anchor/pull/3084)). - lang: Fix using `owner` constraint with `Box`ed accounts ([#3087](https://github.com/coral-xyz/anchor/pull/3087)). +- lang: Add a sanity check for unimplemented token extensions ([#3090](https://github.com/coral-xyz/anchor/pull/3090)). ### Breaking diff --git a/lang/syn/src/codegen/accounts/constraints.rs b/lang/syn/src/codegen/accounts/constraints.rs index 78afe8227b..75ae401f29 100644 --- a/lang/syn/src/codegen/accounts/constraints.rs +++ b/lang/syn/src/codegen/accounts/constraints.rs @@ -937,7 +937,9 @@ fn generate_constraint_init_group( mint: #field.to_account_info(), }), #permanent_delegate.unwrap())?; }, - _ => {} // do nothing + // All extensions specified by the user should be implemented. + // If this line runs, it means there is a bug in the codegen. + _ => unimplemented!("{e:?}"), } }; }