Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Suite: `make -C <repo> test` fails [137] because print-SRC_V_asan-gfx output includes make's "Entering directory" banner

オープン 初心者向け
#1,340 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
88/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
c, shell

調査の方向性

tests/test_asan_gfx.sh と tests/test_leak_guard.sh から始め、特に print-* リーダーに注目して、MAKEFLAGS=w で問題を再現します。両方のリーダーがソースファイル名だけを受け取ることを確認し、次に make -C test を実行してセクション [137] が成功することを確認します。directory-banner の出力に対する要求されたチェックを追加します。

索引モデルが issue の本文から書いたものです。

説明

area:lint-tooling bug

tests/test_asan_gfx.sh (suite section [137]) reads its source list with

SRCS=$(make -C "$ROOT" -s print-SRC_V_asan-gfx 2>/dev/null)

When the suite itself was started as make -C /path/to/EigenScript test, the outer make puts w (--print-directory) into MAKEFLAGS. The nested make inherits it, and -s does not suppress the banner, which goes to stdout. SRCS then contains make[1]: Entering directory '/path' / Leaving directory words, and the compile fails at link time:

/usr/bin/ld: cannot find make[1]:: No such file or directory
/usr/bin/ld: cannot find Entering: No such file or directory
/usr/bin/ld: cannot find '/home/user/wt1243': No such file or directory
...
  FAIL: asan-gfx build failed
  FAIL: test_asan_gfx.sh exited 1 without completing — section verdict is not trustworthy (#988)

The nested call in isolation, measured on main 38a20d5:

$ make -s print-SRC_V_asan-gfx | head -c 60
src/eigenscript.c src/lexer.c src/parser.c src/builtins.c
$ MAKEFLAGS=w make -C . -s print-SRC_V_asan-gfx | head -c 60
make: Entering directory '/home/user/wt1243'
src/eigens

cd <repo> && make test passes [137] (15/15). make -C <repo> test fails it deterministically (twice in a row), and the reported failure points at the gfx corpus rather than at the invocation. Found while gating an unrelated PR (#1330) from a different working directory.

tests/test_leak_guard.sh:51 reads make -s print-SOURCES the same way; it is exposed to the same inherited flag whenever it runs under a make that has w set.

Done when

  • Both readers get a clean list whatever MAKEFLAGS the suite inherits: pass --no-print-directory, or clear MAKEFLAGS/MAKELEVEL for that call.
  • make -C <repo> test passes [137] on a tree where cd <repo> && make test passes.
  • A check that fails if a print-* reader's output contains Entering directory. For example, run the reader with MAKEFLAGS=w in the environment and assert that every word ends in .c.
主要言語
C
スター
3
フォーク
7
平均マージ
3時間 58分
マージ済み PR(30日)
105

環境構築

Codespaces で開く

このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

InauguralSystems/EigenScript のほかの issue

InauguralSystems/EigenScript の issue をすべて見る

似ている issue

C の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。