Unexpected behavior when using algorithm::trim() to remove spaces
- Lenguaje dominante
- C++
- Estrellas
- 131
- Forks
- 117
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
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?
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Comienza con algorithm::trim() y reproduce el ejemplo de división por comas de boostorg/compute#817 utilizando el compilador cruzado de Linux del Android NDK. Compara su comportamiento con MSVC en Windows y GCC/Clang en macOS para aislar la causa específica de la plataforma. Se considera terminado cuando se haya explicado la causa y se haya corregido la salida indicada sin regresiones.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- cpp
- Área
- tooling
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100