GetCapabilities looks like this:
<Layer>
<Title>WMS</Title>
<CRS>EPSG:4326</CRS>
<BoundingBox CRS="EPSG:4326" minx="-90" miny="-180" maxx="90" maxy="180" />
</Layer>
In my point of view you should not use other CRS definitions than given in the specific layer, otherwise you will get an :
<ServiceException code="InvalidCRS">unsupported crs: CRS:84</ServiceException>
If the Layer contains CRS:84 in the <CRS> tag it would be ok:
<Layer>
<Title>WMS</Title>
<CRS>EPSG:4326</CRS>
<CRS>CRS:84</CRS>
<BoundingBox CRS="EPSG:4326" minx="-90" miny="-180" maxx="90" maxy="180" />
<BoundingBox CRS="CRS:84" minx="-180" miny="-90" maxx="180" maxy="90" />
</Layer>
If the Layer CRS tag does not contain CRS:84 it would NOT be ok and would also end up in the ServiceException:
<Layer>
<Title>WMS</Title>
<CRS>EPSG:4326</CRS>
<BoundingBox CRS="EPSG:4326" minx="-90" miny="-180" maxx="90" maxy="180" />
<BoundingBox CRS="CRS:84" minx="-180" miny="-90" maxx="180" maxy="90" />
</Layer>
You can try it out here (its just an example I found):
this is fine :
http://129.206.228.72/cached/osm?LAYERS=osm_auto:all&STYLES=&CRS=EPSG%3A4326&FORMAT=image%2Fpng&SERV...
this is causing "unsupported crs: CRS:84":
http://129.206.228.72/cached/osm?LAYERS=osm_auto:all&STYLES=&CRS=CRS%3A84&FORMAT=image%2Fpng&SERVICE...
The GetCapabilities does not show CRS:84 as possible <CRS> Tag even if the bounding boxes would let you think you can use it:
http://129.206.228.72/cached/osm?Request=GetCapabilities&service=WMS&version=1.3.0