Skip to content

Commit 8bc8d40

Browse files
authored
fix(docgen): export for imported symbols missing; closes #24890 (#24891)
1 parent 032da90 commit 8bc8d40

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

compiler/docgen.nim

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1406,11 +1406,14 @@ proc generateDoc*(d: PDoc, n, orig: PNode, config: ConfigRef, docFlags: DocFlags
14061406
for it in n: traceDeps(d, it)
14071407
of nkExportStmt:
14081408
for it in n:
1409-
# bug #23051; don't generate documentation for exported symbols again
1410-
if it.kind == nkSym and sfExported notin it.sym.flags:
1411-
if d.module != nil and d.module == it.sym.owner:
1412-
generateDoc(d, it.sym.ast, orig, config, kForceExport)
1409+
if it.kind == nkSym:
1410+
if d.module != nil and d.module == it.sym.owner: # in current module
1411+
# bug #23051; don't generate documentation for exported symbols again
1412+
if sfExported notin it.sym.flags:
1413+
generateDoc(d, it.sym.ast, orig, config, kForceExport)
1414+
# else it's to be handled in `of XxxSection` branch
14131415
elif it.sym.ast != nil:
1416+
# only export symbols in imported modules, not in current module
14141417
exportSym(d, it.sym)
14151418
of nkExportExceptStmt: discard "transformed into nkExportStmt by semExportExcept"
14161419
of nkFromStmt, nkImportExceptStmt: traceDeps(d, n[0])

0 commit comments

Comments
 (0)