FILE: onConstructor.kt
    public open class Base : R|kotlin/Any| {
        public constructor(): R|Base| {
            super<R|kotlin/Any|>()
        }

    }
    public final class A : R|kotlin/Any| {
        public constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

    }
    public final class Test1 : R|kotlin/Any| {
        context(c: R|A|)
        public constructor(firstName: R|kotlin/String|): R|Test1| {
            super<R|kotlin/Any|>()
        }

    }
    public final class Test2 : R|kotlin/Any| {
        context(c: R|A|)
        public constructor(): R|Test2| {
            super<R|kotlin/Any|>()
        }

        context(c: R|A|)
        public constructor(a: R|kotlin/String|): R|Test2| {
            super<R|kotlin/Any|>()
        }

    }
    public final class Test3 : R|Base| {
        public constructor(a: R|kotlin/String|): R|Test3| {
            super<R|Base|>()
        }

        public constructor(): R|Test3| {
            super<R|Base|>()
        }

        context(c: R|A|)
        <DANGLING MODIFIER: Top level declaration expected>
        context(c: R|A|)
        <DANGLING MODIFIER: Top level declaration expected>
    }
    public final class Test4 : R|kotlin/Any| {
        public constructor(a: R|@ContextFunctionTypeParams(1) context(A) () -> kotlin/String| = context(<unused var>: R|A|) fun <anonymous>(): R|kotlin/String| <inline=NoInline>  {
            ^ String()
        }
        ): R|Test4| {
            super<R|kotlin/Any|>()
        }

        public final val a: R|@ContextFunctionTypeParams(1) context(A) () -> kotlin/String| = R|<local>/a|
            public get(): R|@ContextFunctionTypeParams(1) context(A) () -> kotlin/String|

        public constructor(b: R|@ContextFunctionTypeParams(1) context(A) (kotlin/String) -> kotlin/String|): R|Test4| {
            this<R|Test4|>()
        }

    }
    public final class Test5 : R|kotlin/Any| {
        public constructor(): R|Test5| {
            super<R|kotlin/Any|>()
        }

        public final class Nested : R|kotlin/Any| {
            context(c: R|A|)
            public constructor(s: R|kotlin/String|): R|Test5.Nested| {
                super<R|kotlin/Any|>()
            }

        }

    }
