[llvm-commits] [llvm] r119107 - in /llvm/trunk: CMakeLists.txt include/llvm/Object/ include/llvm/Object/ObjectFile.h lib/Makefile lib/Object/ lib/Object/CMakeLists.txt lib/Object/ObjectFile.cpp
Chris Lattner
clattner at apple.com
Mon Nov 15 16:36:41 PST 2010
On Nov 15, 2010, at 2:51 PM, Michael Spencer wrote:
> On Mon, Nov 15, 2010 at 5:14 PM, Chris Lattner <clattner at apple.com> wrote:
>> On Nov 14, 2010, at 7:21 PM, Michael J. Spencer wrote:
>>> URL: http://llvm.org/viewvc/llvm-project?rev=119107&view=rev
>>> Log:
>>> Add LLVMObject Library.
>>
>> Looks nice, some minor stuff:
>>
>>> +#include "llvm/ADT/Triple.h"
>>> +#include "llvm/System/Path.h"
>>
>> You should be able to forward declare sys::Path to avoid the Path #include. It take it that you decided not to use an 'unsigned' for the getArch() return value?
>
> I'll get rid of Path. I decided not to use unsigned because it would
> require adding casts in other places, although this can change.
Sounds good, thanks!
-Chris
>
>>> --- llvm/trunk/lib/Object/ObjectFile.cpp (added)
>>> +++ llvm/trunk/lib/Object/ObjectFile.cpp Sun Nov 14 21:21:41 2010
>> ...
>>
>>> +#include "llvm/Object/ObjectFile.h"
>>> +#include "llvm/Support/ErrorHandling.h"
>>> +#include "llvm/Support/MemoryBuffer.h"
>>> +
>>> +namespace llvm {
>>> +namespace object {
>>
>> Instead of nesting the entire contents of the file in the namespace, please use "using namespace" to pull them in scope. using namespace is a good solution for .cpp files (but obviously not for headers).
>
> OK.
>
>>> +ObjectFile *ObjectFile::createObjectFile(const sys::Path &ObjectPath) {
>>> + return createObjectFile(MemoryBuffer::getFile(ObjectPath.c_str()));
>>> +}
>>
>> Do we really want to encourage/force sys::path here? Why not take a stringref?
>>
>> -Chris
>
> I think for historical reasons. I'll change it.
>
> - Michael Spencer
More information about the llvm-commits
mailing list