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 |