--- test: a.rb: diagnostics: - | a.rb:6:4: [error] Cannot assign a value of type `::Integer` to a variable of type `::String` │ ::Integer <: ::String │ ::Numeric <: ::String │ ::Object <: ::String │ ::BasicObject <: ::String │ │ Diagnostic ID: Ruby::IncompatibleAssignment │ └ x = yield(3) ~~~~~~~~~~~~ - | a.rb:8:10: [error] Cannot assign a value of type `::String` to an expression of type `::Integer` │ ::String <: ::Integer │ ::Object <: ::Integer │ ::BasicObject <: ::Integer │ │ Diagnostic ID: Ruby::IncompatibleAssignment │ └ yield(x) ~ - | a.rb:13:4: [error] No block given for `yield` │ Diagnostic ID: Ruby::UnexpectedYield │ └ yield 4 ~~~~~~~ - | a.rb:13:4: [error] Cannot detect the type of the expression │ Diagnostic ID: Ruby::FallbackAny │ └ yield 4 ~~~~~~~ b.rb: diagnostics: - | b.rb:4:10: [error] Cannot assign a value of type `::String` to an expression of type `::Integer` │ ::String <: ::Integer │ ::Object <: ::Integer │ ::BasicObject <: ::Integer │ │ Diagnostic ID: Ruby::IncompatibleAssignment │ └ yield "" ~~