Clarify Some Restrictions on Compact Regions
I've been reading over the docs for using compact regions here: https://phabricator-files.haskell.org/file/data/uqmgx4accjldseyd34xj/PHID-FILE-3sihhhdhl4gaeszvphzb/Compact.hs. I'm pretty excited about this feature, but there's one thing that the docs don't make totally clear. Can MutableByteArray# be placed in a compact region? Near the top, the docs specifically say that "object[s] with mutable pointer fields" cannot be compacted, but that doesn't rule out MutableByteArray#. Later down, in the docs for compact, this restriction is broadened to any mutable data.
I would like to see the docs clarify this better. The existence of resizeMutableByteArray# makes me think that it should not possible, but I'd like to be sure. Thanks.
Trac metadata
| Trac field | Value |
|---|---|
| Version | 8.1 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | lowest |
| Resolution | Unresolved |
| Component | libraries/compact |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |