Revert .cu -> .cxx change for option_parser TU.

This change introduced a strange bug on GCC where a stack object is changed
seemingly randomly.

In `option_parser::update_axis`, the `flag` variable's `data()` pointer
is overwritten to point at garbage memory shortly after parsing. Nothing
related to this object is being updated when the corruption occurs.

This has been observed on gcc7+, but cannot be reproduced on MSVC.

Reverting the `option_parser.cxx` TU to be a CUDA object works
around this.

Fixes issue #36.
This commit is contained in:
Allison Vacanti
2021-10-13 17:25:16 -04:00
parent 0f926f6a3d
commit e11c6961b2
2 changed files with 1 additions and 1 deletions

View File

@@ -12,7 +12,7 @@ set(srcs
int64_axis.cxx
markdown_printer.cu
named_values.cxx
option_parser.cxx
option_parser.cu
printer_base.cxx
printer_multiplex.cxx
runner.cxx