From c5ff719cfd1c5647036b0d7715a789242db99fa0 Mon Sep 17 00:00:00 2001 From: Leigh <351529+leighmcculloch@users.noreply.github.com> Date: Fri, 24 Jul 2026 08:59:19 +0000 Subject: [PATCH 1/2] add SCSpecTypeUDTV2 with opaque id field --- Stellar-contract-spec.x | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Stellar-contract-spec.x b/Stellar-contract-spec.x index 33c4cec..3632c3d 100644 --- a/Stellar-contract-spec.x +++ b/Stellar-contract-spec.x @@ -45,7 +45,8 @@ enum SCSpecType SC_SPEC_TYPE_BYTES_N = 1006, // User defined types. - SC_SPEC_TYPE_UDT = 2000 + SC_SPEC_TYPE_UDT = 2000, + SC_SPEC_TYPE_UDT_V2 = 2001 }; struct SCSpecTypeOption @@ -85,6 +86,12 @@ struct SCSpecTypeUDT string name<60>; }; +struct SCSpecTypeUDTV2 +{ + opaque id[8]; + string name<60>; +}; + union SCSpecTypeDef switch (SCSpecType type) { case SC_SPEC_TYPE_VAL: @@ -121,6 +128,8 @@ case SC_SPEC_TYPE_BYTES_N: SCSpecTypeBytesN bytesN; case SC_SPEC_TYPE_UDT: SCSpecTypeUDT udt; +case SC_SPEC_TYPE_UDT_V2: + SCSpecTypeUDTV2 udtV2; }; struct SCSpecUDTStructFieldV0 From 450bcdaca4a4753da579c9243f62a64f9e60facc Mon Sep 17 00:00:00 2001 From: Leigh <351529+leighmcculloch@users.noreply.github.com> Date: Thu, 30 Jul 2026 04:55:32 +0000 Subject: [PATCH 2/2] drop name from SCSpecTypeUDTV2, id only --- Stellar-contract-spec.x | 1 - 1 file changed, 1 deletion(-) diff --git a/Stellar-contract-spec.x b/Stellar-contract-spec.x index 3632c3d..7a75eaf 100644 --- a/Stellar-contract-spec.x +++ b/Stellar-contract-spec.x @@ -89,7 +89,6 @@ struct SCSpecTypeUDT struct SCSpecTypeUDTV2 { opaque id[8]; - string name<60>; }; union SCSpecTypeDef switch (SCSpecType type)