I followed the instructions for converting some existing code to Swift 4. I chose the "Match Swift 3 Behavior" option because the code I am trying to convert is not my code, and I didn't want to have to try to fix anything manually.
In spite of this, there were more than a dozen compiler errors after the conversion process ran.
Did I do something wrong, or is this just normal?
Yes, this is one a few things that don't convert properly. It's more about the SDK changing, rather than Swift.
You "attributes" dictionary probably looks something like this:
["someKey": someValue, ...]
For the key, you should either use one of the predefined static variables from here:
https://developer.apple.com/documentation/foundation/nsattributedstringkey
or if the predefined constant doesn't exist, you should use
NSAttributedStringKey ("someKey")instead.