## Attached to unit

## Attached to nothing

`module A : sig ... end`
`type t`

Attached to type

`val f : t`

Attached to value

`val e : unit -> t`

Attached to external

`module type S = sig ... end`
`class c : object ... end`
`class type cs = object ... end`
`exception E`

Attached to exception

`type x = ..`
`type x +=`

1. `| X`

Attached to extension

`module S := A`

Attached to module subst

`type s := t`

Attached to type subst

`type u =`

1. `| A'`
   (*

   Attached to constructor

   *)

`type v = {`

1. `f : t;`
   (*

   Attached to field

   *)

`}`

Testing that labels can be referenced

- Attached to unit
- Attached to nothing
- Attached to module
- Attached to type
- Attached to value
- Attached to module type
- Attached to class
- Attached to class type
- Attached to exception
- Attached to extension
- Attached to module subst
- Attached to type subst
- Attached to constructor
- Attached to field