On 2014.03.16 at 09:20 -0700, Arthur Schwarz wrote:
>
>
> Win7 - 64bit
> gcc (GCC) 4.8.2
> g++ -w -DYYDEBUG=1 -DDEBUG_IO -c -g -MMD -MP -MF
> "build/Debug/Cygwin-Windows/SlipRegister.o.d" -o
> build/Debug/Cygwin-Windows/SlipRegister.o SlipRegister.cpp
>
> There is no generated code for "retval = true;" in the conditional block. I
> am including the code fragment and disassembled code.
>
>
> If the issue seems to be a bug then I will include whatever additional data
> is required to help gcc identify the error. If it is not a bug then I truly
> apologize for wasting your time.
>
> What happens is that the conditional is executed but there is no required
> code.
>
> art
>
>
> --------------------- source code ----------------------
>
> bool SlipRegister::post(const string& name, SlipHeader& head) {
> bool retval = false;
> if (!head.isHeader()) {
> postError(SlipErr::E4002, "SlipRegister::post", "", "", head);
> } else { // attempt to insert a new entry
> SlipAsciiEntry entry(name, &head, SlipHashEntry::DEFINED);
> SlipHash::ReturnTuple tuple = hashTable->insert(entry);
> if (tuple.condition == SlipHash::ReturnTuple::INSERTED) {
> retval == true; //
> skipped over
retval = true;
--
Markus