// Object inlining with MSP.  This file is incomplete.  Currently, the
// runtime compiler emits the following error:
// Exception in thread "main" java.lang.IllegalAccessError:
//   class $$Code1$$$1 cannot access its superclass ObjectInliningSample$B
// I believe this is due to a packaging issue

public class ObjectInliningSample {
    
    // Goal: replicate this composition with the fields of A merged into B
    public static class A {
        int x;
    }
    
    public static class B {
        // A a;
        // int m () { return a.x; }
    }
    
    public static void main(String[] args) {
        <| new ObjectInliningSample.B () {
            ObjectInliningSample.A a;
            int m () { return this.a.x; }
        } |>.run ();
    }
}
