Commit c5a5cbe
committed
feat: add Darwin-style framework search paths (-F, -iframework)
- Introduce DUI::SearchPath with PathKind {Include, Framework, SystemFramework}
to model GCC/Clang behavior on Darwin.
- Extend openHeader() to search left-to-right across mixed -I/-F/-iframework
paths, preserving order.
- Implement toAppleFrameworkRelatives() returning both Headers and
PrivateHeaders candidates for a <Pkg/Hdr.h> include.
- Preserve backward compatibility: if searchPaths is empty, legacy
includePaths are mirrored as Include paths.
- Update tests to use PathKind::Framework for framework-based includes.
This brings simplecpp closer to GCC/Clang behavior on macOS and enables
robust resolution of framework headers like Foundation/Foundation.h.
Suggested-by: glank <glankk@users.noreply.github.com>1 parent 2c718ab commit c5a5cbe
3 files changed
+54
-24
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| 16 | + | |
16 | 17 | | |
17 | 18 | | |
18 | 19 | | |
| |||
2432 | 2433 | | |
2433 | 2434 | | |
2434 | 2435 | | |
2435 | | - | |
2436 | | - | |
2437 | | - | |
| 2436 | + | |
| 2437 | + | |
| 2438 | + | |
| 2439 | + | |
2438 | 2440 | | |
2439 | 2441 | | |
2440 | 2442 | | |
2441 | | - | |
| 2443 | + | |
2442 | 2444 | | |
2443 | 2445 | | |
2444 | | - | |
| 2446 | + | |
| 2447 | + | |
2445 | 2448 | | |
2446 | 2449 | | |
2447 | 2450 | | |
| |||
3015 | 3018 | | |
3016 | 3019 | | |
3017 | 3020 | | |
3018 | | - | |
3019 | | - | |
3020 | | - | |
3021 | | - | |
3022 | | - | |
| 3021 | + | |
| 3022 | + | |
| 3023 | + | |
| 3024 | + | |
| 3025 | + | |
| 3026 | + | |
| 3027 | + | |
| 3028 | + | |
| 3029 | + | |
| 3030 | + | |
3023 | 3031 | | |
3024 | 3032 | | |
3025 | | - | |
3026 | | - | |
3027 | | - | |
3028 | | - | |
3029 | | - | |
3030 | | - | |
3031 | | - | |
3032 | | - | |
3033 | | - | |
3034 | | - | |
| 3033 | + | |
| 3034 | + | |
| 3035 | + | |
| 3036 | + | |
| 3037 | + | |
| 3038 | + | |
| 3039 | + | |
| 3040 | + | |
| 3041 | + | |
| 3042 | + | |
| 3043 | + | |
| 3044 | + | |
| 3045 | + | |
| 3046 | + | |
| 3047 | + | |
| 3048 | + | |
3035 | 3049 | | |
3036 | 3050 | | |
3037 | 3051 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
344 | 344 | | |
345 | 345 | | |
346 | 346 | | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
347 | 353 | | |
348 | 354 | | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
349 | 358 | | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
350 | 362 | | |
351 | 363 | | |
352 | 364 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2148 | 2148 | | |
2149 | 2149 | | |
2150 | 2150 | | |
2151 | | - | |
| 2151 | + | |
| 2152 | + | |
| 2153 | + | |
2152 | 2154 | | |
2153 | | - | |
| 2155 | + | |
2154 | 2156 | | |
2155 | 2157 | | |
2156 | 2158 | | |
| |||
2175 | 2177 | | |
2176 | 2178 | | |
2177 | 2179 | | |
2178 | | - | |
| 2180 | + | |
| 2181 | + | |
| 2182 | + | |
2179 | 2183 | | |
2180 | | - | |
| 2184 | + | |
2181 | 2185 | | |
2182 | 2186 | | |
2183 | 2187 | | |
| |||
0 commit comments