Where test.d contains: void fn(uint x){uint a = 0 << x;} This works fine: > dmd test.d -main This does not: > dmd test.d -main -O -inline Segmentation fault: 11 This bug seems to only occur when both the -O and -inline compilation flags are present.
Actually this occurs with the -O flag, independent of -inline
Commits pushed to stable at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/dec45d735143737b499f9ce105b74b13b71f3a73 fix Issue 17168 https://github.com/dlang/dmd/commit/7b48c5b05b735182376e6bbd3382afef6072cec8 Merge pull request #6529 from UplinkCoder/fix_elshl fix Issue 17168 - refactor elshl
Commits pushed to master at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/dec45d735143737b499f9ce105b74b13b71f3a73 fix Issue 17168 https://github.com/dlang/dmd/commit/7b48c5b05b735182376e6bbd3382afef6072cec8 Merge pull request #6529 from UplinkCoder/fix_elshl
Commits pushed to newCTFE at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/dec45d735143737b499f9ce105b74b13b71f3a73 fix Issue 17168 https://github.com/dlang/dmd/commit/7b48c5b05b735182376e6bbd3382afef6072cec8 Merge pull request #6529 from UplinkCoder/fix_elshl