https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122589
--- Comment #4 from Sam James <sjames at gcc dot gnu.org> ---
```
struct QPointF {
QPointF(double xpos, double ypos) : xp(xpos), yp(ypos) {}
double xp;
double yp;
};
double xp, yp, w, h;
struct QRectF {
QRectF(QPointF, int);
QPointF center() { return QPointF(xp + w / 2, yp + h / 2); }
};
void clientArea(QPointF &);
int workspace_size;
void workspace() {
QRectF geom(QPointF(0, 0), workspace_size);
xp = 0 - w / 2;
yp = -h;
QPointF __trans_tmp_2 = geom.center();
clientArea(__trans_tmp_2);
}
```
```
$ g++ placement.cpp.ii -c -O2 -g -march=x86-64-v3
during GIMPLE pass: widening_mul
placement.cpp.ii: In function ‘void workspace()’:
placement.cpp.ii:13:6: internal compiler error: in delink_imm_use, at
ssa-iterators.h:285
13 | void workspace() {
| ^~~~~~~~~
```