You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The compiler detects whether a Crystal source file will be overwritten by the executable if an output filename is not explicitly given; #13370 makes this work on Windows and extends it to the object file after cross-compilation. But it doesn't cover the extra files generated by the --emit options (which are produced even when running a file, not just building):
I guess. But this seems like a very weird and unlikely use case. It only matters if a source file has the file extension .ll which violates the convention to name Crystal source files .cr.
This is different with binary outputs because a) you can select the output path and .cr extension is not that unlikely due to many shards having that in their name and b) source files sometimes omit the file extension to make them easily callable as an ad-hoc compiled program (via she-bang).
The compiler detects whether a Crystal source file will be overwritten by the executable if an output filename is not explicitly given; #13370 makes this work on Windows and extends it to the object file after cross-compilation. But it doesn't cover the extra files generated by the
--emit
options (which are produced even when running a file, not just building):This overwrites
test.ll
. The compiler should be able to take care of this too.Speaking of which, is
--cross-compile --emit=obj
entirely redundant?The text was updated successfully, but these errors were encountered: