diff options
| author | aidanfnv <aidanf@nvidia.com> | 2025-07-11 14:57:38 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-07-11 21:57:38 +0000 |
| commit | 39f3c6c7701ed9d7edd5bfd8ee0adf99d2d658e0 (patch) | |
| tree | 41e0847c69c6439f145dee1e74b423c5fe3be0fe | |
| parent | 1dc32b8bf8dd14e607d306c160b1bedf46067910 (diff) | |
Use stdout for --help text instead of stderr (#7730)
* Use stdout for --help text instead of stderr
* format code (#13)
Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
---------
Co-authored-by: slangbot <ellieh+slangbot@nvidia.com>
Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
| -rw-r--r-- | .github/workflows/check-cmdline-ref.yml | 4 | ||||
| -rw-r--r-- | source/slang/slang-options.cpp | 4 | ||||
| -rw-r--r-- | tools/slang-test/options.cpp | 3 | ||||
| -rw-r--r-- | tools/slang-test/options.h | 1 | ||||
| -rw-r--r-- | tools/slang-test/slang-test-main.cpp | 9 |
5 files changed, 15 insertions, 6 deletions
diff --git a/.github/workflows/check-cmdline-ref.yml b/.github/workflows/check-cmdline-ref.yml index 3eb90599a..95aba65b7 100644 --- a/.github/workflows/check-cmdline-ref.yml +++ b/.github/workflows/check-cmdline-ref.yml @@ -43,7 +43,7 @@ jobs: - name: Generate command line reference run: | mkdir -p temp - "$bin_dir/slangc" -help-style markdown -h > temp/command-line-slangc-reference.md 2>&1 + "$bin_dir/slangc" -help-style markdown -h > temp/command-line-slangc-reference.md - name: Compare with existing reference id: compare @@ -51,6 +51,6 @@ jobs: if ! diff -q temp/command-line-slangc-reference.md docs/command-line-slangc-reference.md > /dev/null; then echo "Command line reference is out of date. Diff:" diff -u docs/command-line-slangc-reference.md temp/command-line-slangc-reference.md - echo "Please run 'slangc -help-style markdown -h > docs/command-line-slangc-reference.md 2>&1' or comment '/regenerate-cmdline-ref' on your PR." + echo "Please run 'slangc -help-style markdown -h > docs/command-line-slangc-reference.md' or comment '/regenerate-cmdline-ref' on your PR." exit 1 fi diff --git a/source/slang/slang-options.cpp b/source/slang/slang-options.cpp index c532e91ae..749f1677a 100644 --- a/source/slang/slang-options.cpp +++ b/source/slang/slang-options.cpp @@ -2049,7 +2049,9 @@ SlangResult OptionsParser::_parseHelp(const CommandLineArg& arg) writer->appendDescriptionForCategory(m_cmdOptions, categoryIndex); } - m_sink->diagnoseRaw(Severity::Note, buf.getBuffer()); + // Write help text to stdout + FileWriter stdoutWriter(stdout, WriterFlag::IsUnowned); + stdoutWriter.write(buf.getBuffer(), buf.getLength()); return SLANG_OK; } diff --git a/tools/slang-test/options.cpp b/tools/slang-test/options.cpp index 4103d56b5..65783477f 100644 --- a/tools/slang-test/options.cpp +++ b/tools/slang-test/options.cpp @@ -111,6 +111,7 @@ static bool _isSubCommand(const char* arg) int argc, char** argv, TestCategorySet* categorySet, + Slang::WriterHelper stdOut, Slang::WriterHelper stdError, Options* optionsOut) { @@ -147,7 +148,7 @@ static bool _isSubCommand(const char* arg) { if (strcmp(argv[i], "-h") == 0 || strcmp(argv[i], "--help") == 0) { - showHelp(stdError); + showHelp(stdOut); return SLANG_FAIL; } } diff --git a/tools/slang-test/options.h b/tools/slang-test/options.h index 8ae89d084..df2de310a 100644 --- a/tools/slang-test/options.h +++ b/tools/slang-test/options.h @@ -141,6 +141,7 @@ struct Options int argc, char** argv, TestCategorySet* categorySet, + Slang::WriterHelper stdOut, Slang::WriterHelper stdError, Options* optionsOut); diff --git a/tools/slang-test/slang-test-main.cpp b/tools/slang-test/slang-test-main.cpp index 4eab84340..6355426f7 100644 --- a/tools/slang-test/slang-test-main.cpp +++ b/tools/slang-test/slang-test-main.cpp @@ -4997,8 +4997,13 @@ SlangResult innerMain(int argc, char** argv) context.setInnerMainFunc("slangi", &SlangITool::innerMain); } - SLANG_RETURN_ON_FAIL( - Options::parse(argc, argv, &categorySet, StdWriters::getError(), &context.options)); + SLANG_RETURN_ON_FAIL(Options::parse( + argc, + argv, + &categorySet, + StdWriters::getOut(), + StdWriters::getError(), + &context.options)); Options& options = context.options; |
