Length(s) of allocatable character array?

Yes, the assignment works, but not initialization or as a parameter constant.

    6 |    type(string) :: words(1:2) = [string('first'),string('second')]
      |                                        1
Error: Invalid initialization expression for ALLOCATABLE component 's' in structure constructor at (1)

This is a general limitation of allocatable entities of any type, character, integer, real, etc., or in this case, of an allocatable component.