My (BrE) OED and (AmE) dictionary.com both list the adjective 'middle-class' with a hyphen. The OED provides these examples:
a middle-class attitude
The magazine is very middle-class.
The (AmE) CMOS provides these examples:
a middle-class neighborhood
the neighborhood is middle class
OED lists the adjective 'up to date' with no hyphens and provides these examples:
This technology is bang up to date.
dictionary.com lists the adjective 'up-to-date' with hyphens CMOS and provides these examples:
His equipment was up to date
an up-to-date solution
It appears the principle of hyphenating compound adjectives before nouns is treated differently by dictionaries using BrE and AmE. It appears:
- BrE dictionaries may list compound adjectives as hyphenated or not; they assume writers will always hyphenate them before nouns, but
- AmE dictionaries always compound adjectives as hyphenated; they assume writers will NOT hyphenate them after nouns.
I hope someone has a satisfactory explanation. I fear I'm about to have a nervous breakdown. :(