Summary
make -emit-inline-file always write a file
Metadata
- Id: f4d6b4fc791b4d2ea4b7f9b9bb31446258410cef
- Trac id: 1715
- Type: change request
- Reporter: alicemaz
- Owner:
- Cc:
- Status: closed
- Component: compiler
- Estimated difficulty: trivial
- Resolution: fixed
- Priority: not urgent at all
- Milestone: someday
- Version: 5.2.0
- Changetime: 2020-08-23 12:14:06 UTC
- Created: 2020-08-15 21:54:38 UTC
- Keywords:
Attachments
- f4d6b4fc791b4d2ea4b7f9b9bb31446258410cef/attachments/emit-inline.patch
Description
presently, -emit-inline-file will not emit a file, and will delete one if it exists, if there are no exported procedures that can be inlined. this means in a pattern where you always emit for every -unit, and always consult for every -uses, compilation will halt if a file isn't found
it's a matter of opinion what the right thing to do here is, but I'm inclined to think a file should always be emitted if the flag is passed, even it's empty, because:
- it's consistent with how -emit-types-file behaves
- usage of the flag indicates user intent to create the file
- "absence of evidence isn't evidence of absence"--the existence of an empty file is an affirmative statement there is nothing to inline
note the deletion/omission behavor was added on purpose in 2010, so this isn't accidental, but I'm not sure the reasoning
tested on platform=LINUX
Changes and comments
[2020-08-15 21:55:06 UTC] alicemaz attached emit-inline.patch (description=#f)
[2020-08-23 12:14:06 UTC] megane changed status from new to closed
[2020-08-23 12:14:06 UTC] megane set resolution to fixed
[2020-08-23 12:14:06 UTC] megane wrote:
Closed by 5df4ce1939c7450dfa481172204b6c898505e7a5