llvm / llvm/llvm-project

llvm-ml.exe incorrect processing include directive compared to msvc ml64.exe

Open
#158,478 0 comments 0 reactions 0 assignees View on GitHub
llvm-tools
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

dir C:\test
test.asm
test_data.asm

test.asm
```
.data

include test_data.asm

end
```

test_data.asm
```
;empty

```

mkdir C:\test\build
cd C:\test\build

LLVM
llvm-ml.exe -m64 -c -Fo test.asm.obj ..\test.asm

```
..\test.asm:4:9: error: Could not find include file 'test_data.asm'
include test_data.asm
```

error compile

MSVC
ml64.exe -c -Fo test.asm.obj ..\test.asm

Assembling: ..\test.asm

compile all ok

Contributor guide

Open the contributing guide

Research direction

Reproduce the report from C:\test\build using llvm-ml.exe with ..\test.asm, which includes test_data.asm, and compare the result with ml64.exe. Start by tracing how the include directive is resolved from this invocation. Done means llvm-ml.exe accepts the same include and produces test.asm.obj successfully.

Written by the indexing model from the issue text.

Assessment

Domain
compilers
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.