[llvm] r251181 - ScalarReplAggregates.cpp: Try to appease clash of anonymous::SROA in modules build.

NAKAMURA Takumi via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 26 17:18:01 PDT 2015


I didn't have time to file the bugzilla about it in the last weekend. Will
do later.

On Tue, Oct 27, 2015 at 7:17 AM David Blaikie <dblaikie at gmail.com> wrote:

> On Mon, Oct 26, 2015 at 3:06 PM, Sean Silva <chisophugis at gmail.com> wrote:
>
>>
>>
>> On Sat, Oct 24, 2015 at 9:15 AM, David Blaikie via llvm-commits <
>> llvm-commits at lists.llvm.org> wrote:
>>
>>>
>>>
>>> On Fri, Oct 23, 2015 at 11:42 PM, NAKAMURA Takumi via llvm-commits <
>>> llvm-commits at lists.llvm.org> wrote:
>>>
>>>> Author: chapuni
>>>> Date: Sat Oct 24 01:42:42 2015
>>>> New Revision: 251181
>>>>
>>>> URL: http://llvm.org/viewvc/llvm-project?rev=251181&view=rev
>>>> Log:
>>>> ScalarReplAggregates.cpp: Try to appease clash of anonymous::SROA in
>>>> modules build.
>>>>
>>>
>>> Um... - where's this clashing with? Is there an anonymous namespace with
>>> a SROA thing in a header somewhere? That really shouldn't be there. What
>>> else would this be colliding with in a modules build?
>>>
>>
>> I think what's happening is that this is pulling in a top-level module
>> `LLVM_Transforms` from include/llvm/module.modulemap, which
>> includes llvm/Transforms/Scalar/SROA.h, which defines a class `SROA`.
>> There's probably a missing special case to sprinkle somewhere so that we
>> uphold the weird name hiding thing we do for submodules.
>>
>
> Yep, possibly - Mr. Smith is out on vacation this week. Hopefully he can
> weigh in on this next week. But I hope we don't leave that #define around
> for long. It's pretty awkward.
>
>
>>
>> -- Sean Silva
>>
>>
>>>
>>>
>>>>
>>>> Modified:
>>>>     llvm/trunk/lib/Transforms/Scalar/ScalarReplAggregates.cpp
>>>>
>>>> Modified: llvm/trunk/lib/Transforms/Scalar/ScalarReplAggregates.cpp
>>>> URL:
>>>> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/ScalarReplAggregates.cpp?rev=251181&r1=251180&r2=251181&view=diff
>>>>
>>>> ==============================================================================
>>>> --- llvm/trunk/lib/Transforms/Scalar/ScalarReplAggregates.cpp (original)
>>>> +++ llvm/trunk/lib/Transforms/Scalar/ScalarReplAggregates.cpp Sat Oct
>>>> 24 01:42:42 2015
>>>> @@ -60,6 +60,7 @@ STATISTIC(NumAdjusted,  "Number of scala
>>>>  STATISTIC(NumConverted, "Number of aggregates converted to scalar");
>>>>
>>>>  namespace {
>>>> +#define SROA SROA_
>>>>    struct SROA : public FunctionPass {
>>>>      SROA(int T, bool hasDT, char &ID, int ST, int AT, int SLT)
>>>>        : FunctionPass(ID), HasDomTree(hasDT) {
>>>>
>>>>
>>>> _______________________________________________
>>>> llvm-commits mailing list
>>>> llvm-commits at lists.llvm.org
>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>>>>
>>>
>>>
>>> _______________________________________________
>>> llvm-commits mailing list
>>> llvm-commits at lists.llvm.org
>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>>>
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151027/bf80909f/attachment.html>


More information about the llvm-commits mailing list