https://bugs.llvm.org/show_bug.cgi?id=34070

            Bug ID: 34070
           Summary: Refactor all LLVM tools to use a common output file
                    management library
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Support Libraries
          Assignee: unassignedb...@nondot.org
          Reporter: r...@google.com
                CC: llvm-bugs@lists.llvm.org

LLVM tools generally produce output and write it to a file. However, they all
do it with varying levels of good behavior. Ideally, a tool has these
properties:

1. Atomicity: Regardless of how the tool exits (success, crash, SIGKILL) the
output file should either be complete and valid, or it does not exist.
2. No leaks: During normal operation (successful execution or crash, but not
SIGKILL), no temporary files should be left behind after the tool exits.

We need to beef up ToolOutputFile and FileOutputBuffer to have these
properties, and then refactor all LLVM tools to use them. Right now, neither
successfully deletes their temporary files on Windows because we keep the file
descriptors open.

Ideally, we should deprecate RemoveFileOnSignal and sink all this logic into
Support.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to