diff --git a/internal/cbm/extract_imports.c b/internal/cbm/extract_imports.c index 538335b0e8..2d8ed1e4ea 100644 --- a/internal/cbm/extract_imports.c +++ b/internal/cbm/extract_imports.c @@ -1588,8 +1588,18 @@ static void parse_embedded_imports(CBMExtractCtx *ctx) { embedded_collect_content_nodes(ctx->root, e, hits, &hit_count, MAX_EMBEDDED_BLOCKS); for (int i = 0; i < hit_count; i++) { CBMLanguage embedded_language = e->embedded_language; - bool extract_structure = ctx->language == CBM_LANG_VUE; - if (extract_structure && + /* Structure (defs + calls), not just imports, for hosts whose + * embedded language carries real code. Vue since #1852; CFML's + * since the #1412 distillation. */ + bool extract_structure = + ctx->language == CBM_LANG_VUE || ctx->language == CBM_LANG_CFML; + /* The attribute resolver is Vue's: it inspects