Skip to content

cl: featQuietIgnore, InlineFuncIgnore; tool: cfg.IgnoreInline - #888

Merged
xushiwei merged 3 commits into
goplus:mainfrom
xushiwei:q
Oct 1, 2026
Merged

xushiwei merged 3 commits into
goplus:mainfrom
xushiwei:q

Conversation

@xushiwei

@xushiwei xushiwei commented Oct 1, 2026

Copy link
Copy Markdown
Member

No description provided.

@codecov

codecov Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 84.61538% with 6 lines in your changes missing coverage. Please review.
✅ Project coverage is 87.64%. Comparing base (c25cc3a) to head (4bf8d7f).
⚠️ Report is 29 commits behind head on main.

Files with missing lines Patch % Lines
cl/class.go 73.33% 4 Missing ⚠️
cl/type.go 75.00% 1 Missing ⚠️
cl/var.go 50.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #888      +/-   ##
==========================================
+ Coverage   87.60%   87.64%   +0.04%     
==========================================
  Files          22       22              
  Lines        1944     1951       +7     
==========================================
+ Hits         1703     1710       +7     
  Misses        241      241              
Flag Coverage Δ
llgo-tests 87.64% <84.61%> (+0.04%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@fennoai fennoai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review summary

Clean, well-scoped refactor that splits the single featIgnored flag into featExplicitIgnore / featQuietIgnore (= featAllIgnore) and adds an IgnoreInline config so inline-function skips can be logged quietly. The two-flag model is applied consistently: featAllIgnore is the uniform "should I bail?" test, and the quiet/explicit distinction is only consulted when deciding whether to log (ignoref) or when recording a type's ignore reason. Logic and format strings are sound — no security or performance concerns (the pipeline is fully sequential, so the mutable global is not a data race today).

The main design concern is the public, mutable package-level var cl.InlineFuncIgnore, which carries two latent correctness issues (not reset across runs; sub-package IgnoreInline not honored). Details inline. A few terminology/comment nits also noted.

Comment thread tool/config.go
Comment thread cl/func.go
Comment thread cl/type.go
Comment thread cl/typedef.go

@fennoai fennoai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Follow-up: one additional finding (see inline).

Comment thread cmd/llcppg/gen.go
@xushiwei
xushiwei merged commit f1dd7be into goplus:main Oct 1, 2026
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant