Thanks, Changchun. I have just a few more questions to try to debug the
problem:
- What version of g++ are you using? (g++ --version should tell you)
- What architecture are you building for?
- Could you send the generated code around line 266 in demo.pb.h just so
that it's clear what lines the compiler is warning about?

On Mon, Nov 14, 2016 at 7:55 AM, <[email protected]> wrote:

> Adam, Thanks for your reply.
>
> Here I attached a simple .proto file to demonstrate this warning message:
>
> $ protobuf-3.1/bin/protoc --cpp_out=. demo.proto
>
> $ /usr/bin/g++ -Iprotobuf-3.1/include -c -Wall -O2 -Wno-long-long demo.pb.
> cc -o demo.pb.o
> In member function 'virtual bool demo::DemoMessage::MergePartia
> lFromCodedStream(google::protobuf::io::CodedInputStream*)':
> cc1plus: warning: dereferencing pointer 'prephitmp.1630' does break strict
> -aliasing rules
> demo.pb.h:266: note: initialized from here
> cc1plus: note: initialized from here
>
> Please let me know if anything else you need to debug further.
>
> Thanks,
> Changchun
>
> On Friday, November 11, 2016 at 4:45:03 PM UTC-5, Adam Cozzette wrote:
>>
>> What version of g++ are you using? Also, do you have a way of determining
>> what actual line of code the compiler is warning about there?
>>
>> I tried building with -Wstrict-aliasing=2 at commit df8390790a and saw a
>> few warnings like this:
>>
>> ./google/protobuf/generated_message_util.h:94:66: warning: dereferencing
>> type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
>>    const T& get() const { return reinterpret_cast<const T&>(union_); }
>>
>> But that doesn't look like it's quite the same warning as what you are
>> seeing.
>>
>> On Fri, Nov 11, 2016 at 12:39 PM, <[email protected]> wrote:
>>
>>> I have below option in my .proto file:
>>>
>>> *option cc_enable_arenas = true;*
>>>
>>> But g++ for Linux gives below warning:
>>>
>>> *cc1plus: warning: dereferencing pointer 'prephitmp.4925' does break
>>> strict-aliasing rules*
>>>
>>> Will this cause issue and how to solve it?
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Protocol Buffers" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>> Visit this group at https://groups.google.com/group/protobuf.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
> You received this message because you are subscribed to the Google Groups
> "Protocol Buffers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/protobuf.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.

Reply via email to