When implementing DFDL-951 there were two test regressions. Both dealing with a 4-byte character. It seems as though the getStringInChars method of the reader only reads/interprets the first 2 bytes instead of the 4.
In daffodil-test, section11/content_framing_properties/
TestContentFramingPropertiesDebug.scala
Look for the DFDL-951 regression comment.