From 4cd1202c488c7fd1c00a645728d903bdf19de575 Mon Sep 17 00:00:00 2001 From: David Morgan Date: Thu, 11 Jan 2024 09:52:59 +0100 Subject: [PATCH] [macros] Clarify introspection StateError on retry. --- working/macros/feature-specification.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/working/macros/feature-specification.md b/working/macros/feature-specification.md index 0c3aaac16..c5ad1f395 100644 --- a/working/macros/feature-specification.md +++ b/working/macros/feature-specification.md @@ -594,6 +594,10 @@ finish. If a cycle arises in macro applications waiting for other macro applications to complete then a `StateError ` is thrown. +Subsequent introspection calls on the same target will always throw +`StateError`, even if all macro applications on the target have finished, to +ensure a deterministic outcome. + Rules might be added in future to decide in some specific cases which macro should run with incomplete introspection results to break a cycle. For example, there might be a rule specifying that an application to a superclass runs first