Skip to content

Enable -isystem for third-party headers on Ubuntu#13

Open
billdenney wants to merge 1 commit into
mainfrom
quiet-build-warnings
Open

Enable -isystem for third-party headers on Ubuntu#13
billdenney wants to merge 1 commit into
mainfrom
quiet-build-warnings

Conversation

@billdenney

Copy link
Copy Markdown
Contributor

What

inst/tools/workaround.R only selected -isystem (vs plain -I) for third-party headers (BH, RcppEigen, Rcpp, StanHeaders) on Pop!_OS, falling back to -I everywhere else. On Ubuntu this exposed ~9,300 -Wignored-attributes / -Wdeprecated-declarations warnings from RcppEigen and boost on every build, burying any real diagnostic from rxode2ll's own code.

Why

None of these warnings come from rxode2ll's own source — they're all third-party Eigen/boost. Sibling package rxode2 already selects -isystem for both Pop!_OS and Ubuntu; this just adds the missing Ubuntu branch so the two stay consistent and third-party headers are correctly treated as system headers.

if (any(grepl("Pop!_OS", utils::osVersion, fixed=TRUE)) ||
      any(grepl("Ubuntu", utils::osVersion, fixed=TRUE))) {
  .i <- "isystem"
}

Impact

  • Ubuntu (incl. GitHub Actions runners): ~9,300 → 0 warnings.
  • Other platforms: unchanged (still -I, as before).

🤖 Generated with Claude Code

workaround.R only selected -isystem (vs plain -I) for third-party headers
(BH, RcppEigen, Rcpp, StanHeaders) on Pop!_OS, falling back to -I
everywhere else. On Ubuntu this exposed thousands of -Wignored-attributes
and -Wdeprecated-declarations warnings from RcppEigen and boost on every
build, burying any real diagnostic from rxode2ll's own code.

Sibling package rxode2 already selects -isystem for both Pop!_OS and
Ubuntu; match that here so third-party headers are treated as system
headers and their warnings are suppressed (~9300 -> 0 warnings on Ubuntu,
including GitHub Actions runners). No effect on other platforms.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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