I would guess that there is some kind of mismatch in your protobuf generated code. This kind of thing might happen if perhaps you added a new field and updated the pb.cc file but not the pb.h file (or vice versa).
On Sat, Jun 12, 2021 at 1:27 PM Bill Leisge <[email protected]> wrote: > Looking back on my post, I need to add additional context. The message of > containing the variable in question is... > > message GeneratorStatus { > optional int32 command = 1; > optional bool is_generator_on = 2; > optional bool is_generator_busy = 3; > optional float current = 4; > } > > The following encode the GeneratorStatus message... > pGeneratorStatus->set_current(4.5); > if (pGeneratorStatus->has_current()) > float CurrentReadback = pGeneratorStatus->current(); > > CurrentReadback is a very small number, certainly not 4.5. > > Tracing into the Protec .h file the disassembled function > _internal_set_current() the AX register is set to the instance of > pGeneratorStatus (this pointer) and stores the argument at AX+16h. > Similarly the getter function _internal_current() set AX to the this > pointer and sets the destination register to AX+18h. The GeneratorStatus > object member _current is a float and the generated code leading up to > setting _current is correct, it is only the operand references that are not > correct. > > I have changed the scalar to double and uint32 to no avail. > > It is obvious not a proto/Protec issue in that the generated C++ code is > correct, but VS 2015 code generation anomaly. > > I am hoping a group member has experienced this issue and might have a > solution. Thank you. > > > > -- > 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 view this discussion on the web visit > https://groups.google.com/d/msgid/protobuf/6c41448b-4659-4c6e-ac8b-c2bf30830047n%40googlegroups.com > <https://groups.google.com/d/msgid/protobuf/6c41448b-4659-4c6e-ac8b-c2bf30830047n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- 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 view this discussion on the web visit https://groups.google.com/d/msgid/protobuf/CADqAXr7RsBNX-tUZVgcPzPi_%2BT2Vy%2BYGR-c7VQ2eezst9OCc1A%40mail.gmail.com.
