Subject: bug#21275: 24.5; Selection deleted with electric pair mode in cc mode

From: Stefan Monnier <[email-masked]>
Date: Wed, 19 Aug 2015 17:52:18 -0400

> +(defun delete-selection-uses-region-p ()

The way I read it, this name says "a function which tells us if
delete-selection uses the region".

> +  "Return non-nil when the current command uses the region.

It's not about "the current command" but about self-insert-command
(which may be the current command or may be called by the current command).

> +(put 'c-electric-brace 'delete-selection 'delete-selection-uses-region-p)
> +(put 'c-electric-brace 'pending-delete 't)
> +(put 'c-electric-paren 'delete-selection 'delete-selection-uses-region-p)
> +(put 'c-electric-paren 'pending-delete 't)

An alternative would be to copy the `delete-selection' (and
`pending-delete') property of `self-insert-command'.  Probably in an
after-load, tho.

        Stefan