From aa2d2d3dab51a472dee8742e6e133c38a078144c Mon Sep 17 00:00:00 2001 From: William Deegan Date: Tue, 20 Jun 2023 16:09:35 +0000 Subject: Switch D Scanner logic to prefer .di over .d when satisfying includes per https://dlang.org/dmd-linux.html#interface-files --- SCons/Scanner/D.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/SCons/Scanner/D.py b/SCons/Scanner/D.py index 9bc608f..fbb2894 100644 --- a/SCons/Scanner/D.py +++ b/SCons/Scanner/D.py @@ -48,9 +48,11 @@ class D(Classic): # translate dots (package separators) to slashes inc = include.replace('.', '/') - i = SCons.Node.FS.find_file(inc + '.d', (source_dir,) + path) + # According to https://dlang.org/dmd-linux.html#interface-files + # Prefer .di files over .d files when processing includes(imports) + i = SCons.Node.FS.find_file(inc + '.di', (source_dir,) + path) if i is None: - i = SCons.Node.FS.find_file(inc + '.di', (source_dir,) + path) + i = SCons.Node.FS.find_file(inc + '.d', (source_dir,) + path) return i, include def find_include_names(self, node): -- cgit v0.12