Unexpected behavior when using algorithm::trim() to remove spaces
- Linguagem predominante
- C++
- Estrelas
- 131
- Forks
- 117
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Descrição
The issue comes from boostorg/compute#817 where `boost::trim()` is invoked to sanitize OpenCL kernel arguments from preprocessor-generated strings. One of the failing cases taken directly from the boost compute repo is this:
```c++
two, pi // original string
[two, pi] // vector after split() using comma as delimiter
two // first element after trim()
p // second element after trim()
```
Here the `trim()` actually leave a leading space left of `pi` and slices one valid character on the right. One big BUT: this only happens to Linux cross-compiler targeting Android platform, downloaded from Android NDK page. Where as MSVC on Windows, GCC/Clang on Mac all run without problems. What might be the reason of this unexpected behavior?
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Direção de pesquisa
Comece com algorithm::trim() e reproduza o exemplo de separação por vírgulas de boostorg/compute#817 usando o compilador cruzado Linux do Android NDK. Compare o comportamento com o MSVC no Windows e o GCC/Clang no macOS para isolar a causa específica da plataforma. Está concluído quando a causa estiver explicada e a saída reportada estiver corrigida sem regressões.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- cpp
- Domínio
- tooling
- Tipo de issue
- Bug
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Estagnada
- Clareza
- Precisa de esclarecimento
- Facilidade para iniciantes
- 25/100