NO

Author Topic: Compiler 64bits V12 bug on line "d->m_dict[TDEFL_LZ_DICT_SIZE + dst_pos] = c;"  (Read 3220 times)

Offline frankie

  • Global Moderator
  • Member
  • *****
  • Posts: 2113
Attached an offending sample project reduced to minimal
The line:
Code: [Select]
d->m_dict[TDEFL_LZ_DICT_SIZE + dst_pos] = c;Generate a compiler bug.
The workaround:
Code: [Select]
if (dst_pos < (TDEFL_MAX_MATCH_LEN - 1))
{
//d->m_dict[TDEFL_LZ_DICT_SIZE + dst_pos] = c; //Compiler failure line! Compiler BUG
int appo = TDEFL_LZ_DICT_SIZE + dst_pos;
d->m_dict[appo] = c;
}
The bug affects only the 64bits targets. 32bits targets aren't affected by the bug.
« Last Edit: October 28, 2023, 04:10:58 PM by frankie »
"It is better to be hated for what you are than to be loved for what you are not." - Andre Gide