Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes bad codegen in gcc 11.3 #487

Merged
merged 2 commits into from
Jan 20, 2025
Merged

Fixes bad codegen in gcc 11.3 #487

merged 2 commits into from
Jan 20, 2025

Conversation

biojppm
Copy link
Owner

@biojppm biojppm commented Jan 5, 2025

Fixes #486
See also #464

Copy link

codecov bot commented Jan 5, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 97.32%. Comparing base (c7b792d) to head (2fcd2d4).
Report is 3 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #487   +/-   ##
=======================================
  Coverage   97.32%   97.32%           
=======================================
  Files          34       34           
  Lines       11325    11325           
=======================================
  Hits        11022    11022           
  Misses        303      303           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@biojppm biojppm force-pushed the fix/486_ub_gcc11 branch 2 times, most recently from 72acea3 to bd83037 Compare January 9, 2025 17:48
no luck so far with any of the following:

native gcc11.4 on ubuntu22.04:
```
( \
set -xe ; \
cd /rapidyaml/ ; \
bt=Release ; \
bd=build/docker-$bt ; \
tgt=ryml-test-scalar_dquoted ; \
export C4_EXTERN_DIR=`pwd`/build/extern ; \
mkdir -p $C4_EXTERN_DIR ; \
cmake -B $bd -D RYML_DEV=ON -D RYML_BUILD_BENCHMARKS=OFF && \
cmake --build $bd -j --target $tgt && \
./$bd/test/$tgt --gtest_filter=*486* )
```

Tried also using -DRYML_STRICT_ALIASING=OFF (to remove
-fstrict-aliasing) and -DRYML_PEDANTIC=OFF, and still could not
reproduce.

with wine in arch linux (gcc 14):
```
( set -xe ; \
bt=Release ; \
bd=build/mingw-$bt ; \
tgt=ryml-test-scalar_dquoted ; \
cd ~/proj/rapidyaml/ ; \
cmake -B $bd -D
CMAKE_TOOLCHAIN_FILE=`pwd`/.github/mingw-w64-x86_64.cmake -D RYML_DEV=ON && \
cmake --build $bd -j --target $tgt && \
env WINEPATH=/usr/x86_64-w64-mingw32/bin wine ./$bd/bin/$tgt.exe --gtest_filter=*486* )
```
with wine in ubuntu18.04 (gcc 7.3)
```
( set -xe ; \
cd /rapidyaml/ ; \
bt=Release ; \
bd=build/docker-mingw-$bt ; \
tgt=ryml-test-scalar_dquoted ; \
export C4_EXTERN_DIR=`pwd`/build/extern ; \
mkdir -p $C4_EXTERN_DIR ; \
cmake -B $bd -D
CMAKE_TOOLCHAIN_FILE=`pwd`/.github/mingw-w64-x86_64.cmake -D RYML_DEV=ON -D RYML_BUILD_BENCHMARKS=OFF && \
cmake --build $bd -j --target $tgt && \
env WINEPATH="/usr/lib/gcc/x86_64-w64-mingw32/7.3-win32;/usr/x86_64-w64-mingw32/lib" wine ./$bd/bin/$tgt.exe --gtest_filter=*486* )
```
with wine in ubuntu22.04 (gcc 10)
```
( set -xe ; \
cd /rapidyaml/ ; \
bt=Release ; \
bd=build/docker-mingw-$bt ; \
tgt=ryml-test-scalar_dquoted ; \
export C4_EXTERN_DIR=`pwd`/build/extern ; \
mkdir -p $C4_EXTERN_DIR ; \
cmake -B $bd -D
CMAKE_TOOLCHAIN_FILE=`pwd`/.github/mingw-w64-x86_64.cmake -D RYML_DEV=ON -D RYML_BUILD_BENCHMARKS=OFF && \
cmake --build $bd -j --target $tgt && \
env WINEPATH="/usr/lib/gcc/x86_64-w64-mingw32/10-win32;/usr/x86_64-w64-mingw32/lib" wine ./$bd/bin/$tgt.exe --gtest_filter=*486* )
```
@biojppm biojppm force-pushed the fix/486_ub_gcc11 branch 2 times, most recently from 1b3b0c3 to 2fcd2d4 Compare January 20, 2025 18:37
@biojppm biojppm merged commit 0f93764 into master Jan 20, 2025
253 of 254 checks passed
@biojppm biojppm deleted the fix/486_ub_gcc11 branch January 20, 2025 20:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

GCC 11.3 quietly misbuilds
1 participant