https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80065
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |INVALID Target Milestone|--- |7.0 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- ruby trunk uses #define RB_GC_GUARD(v) \ (*__extension__ ({ \ volatile VALUE *rb_gc_guarded_ptr = &(v); \ __asm__("" : : "m"(rb_gc_guarded_ptr)); \ rb_gc_guarded_ptr; \ })) which still works.