[LLVMdev] llvm-ranlib: Bus Error in regressions + fix

Reid Spencer reid at x10sys.com
Tue Nov 29 21:21:57 PST 2005


Evan,

Your patch passed tests on my system and is now committed. Thanks!

Reid.

Evan Jones wrote:

> On Nov 23, 2005, at 18:17, Reid Spencer wrote:
> 
>>> So this comment means that I should attempt to theoretically support 
>>> Windows, and close the current archive file before updating it?
>>
>> If you use sys::Path, it is not "theoretically" supported, it is 
>> supported.
> 
> 
> Well, except of course that it isn't currently possible to build LLVM on 
> Windows. Hence this is a somewhat theoretical issue.
> 
>> Sounds good. We can change to the two-pass reading (when building a 
>> symbol table) some other time. I'm sure you just want to get this 
>> little issue done and over with :)
> 
> 
> I have a problem sometimes: I need to find *why* something goes wrong.
> 
> At any rate, I've attached the latest version of my patch. It has some 
> interesting details:
> 
> 1. Before replacing the original archive file, it invalidates all the 
> members of the current Archive instance. This required me to refactor 
> the destructor code into a separate function. This should make this code 
> work on Windows.
> 
> 2. I fixed a memory leak in the Archive destructor. The "foreignST" 
> member was never deleted.
> 
> 3. There are now two temporary files created if we need to build the 
> symbol table, and they are moved over top of the original archive once 
> the process is complete.
> 
> Let me know if there are any comments. The part where the second 
> temporary file is kind of gross, since it needs to catch exceptions and 
> be erased if it crashes.
> 
> Evan Jones
> 
> 
> -- 
> Evan Jones
> http://evanjones.ca/
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list