llvm / llvm/llvm-project

[clang] Behavior of `C_INCLUDE_DIRS` on Linux differs from glibc to musl

Open
#215,982 1 comment 0 reactions 0 assignees View on GitHub
clang:driver platform:linux
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

The Linux clang driver tries to add the resource-include-dir ahead when using glibc, while it is delayed on musl.

On glibc, the resource-include-dir is added before detecting C_INCLUDE_DIRS. On musl, the resource-include-dir will not be included, since the function immediately returns after `C_INCLUDE_DIRS`.

Contributor guide

Open the contributing guide

Research direction

The issue points to the Linux clang driver logic handling C_INCLUDE_DIRS and resource-include-dir, but names no files or tests. Start by locating that driver code and comparing the glibc and musl branches; confirm the intended ordering and inclusion behavior for both libc paths, then verify the result on each.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.