Remove Def* bytecodes from hhas tests
[hiphop-php.git] / hphp / test / quick / asm_trait.hhas
blob054062866f4789060c5438e7936119621bead1b0
1 .hh_file 1;
3 # Try making some traits
6 .main {
8   Int 1
9   RetC
12 .class [trait] Frobbable {
13   .default_ctor;
15   .method [public] frob() {
16     String "Frobbed\n"
17     Print
18     RetC
19   }
22 .class UseFrob {
23   .use Frobbable;
24   .default_ctor;
27 .class AliasFrob {
28   .use Frobbable { frob as heh; }
29   .default_ctor;
32 .class [trait] PrivateFoo {
33   .default_ctor;
34   .method [private] foo() {
35     String "PrivateFoo::foo()\n"
36     Print
37     RetC
38   }
41 .class Publicize {
42   .use PrivateFoo { foo as [public]; }
43   .default_ctor;
46 .class [trait] Conflicting {
47   .default_ctor;
49   .method [public] frob() {
50     String "Conflicting::Frobbed\n"
51     Print
52     RetC
53   }
56 .class Resolution {
57   .default_ctor;
58   .use Conflicting Frobbable {
59     Conflicting::frob insteadof Frobbable;
60     Frobbable::frob as yo;
61   }
64 .function ["__EntryPoint"("""y:0:{}""")] main() {
65   NewObjD "UseFrob"
66   Dup
67   NullUninit
68   NullUninit
69   FCallCtor <LockWhileUnwinding> 0 1 "" - "" ""
70   PopC
71   LockObj
72   SetL $obj
73   PopC
75   CGetL $obj
76   NullUninit
77   NullUninit
78   FCallObjMethodD <> 0 1 "" - "" "" NullThrows "frob"
79   PopC
81   NewObjD "AliasFrob"
82   Dup
83   NullUninit
84   NullUninit
85   FCallCtor <LockWhileUnwinding> 0 1 "" - "" ""
86   PopC
87   LockObj
88   SetL $obj
89   PopC
91   CGetL $obj
92   NullUninit
93   NullUninit
94   FCallObjMethodD <> 0 1 "" - "" "" NullThrows "heh"
95   PopC
97   NewObjD "Publicize"
98   Dup
99   NullUninit
100   NullUninit
101   FCallCtor <LockWhileUnwinding> 0 1 "" - "" ""
102   PopC
103   LockObj
104   SetL $obj
105   PopC
107   CGetL $obj
108   NullUninit
109   NullUninit
110   FCallObjMethodD <> 0 1 "" - "" "" NullThrows "foo"
111   PopC
113   NewObjD "Resolution"
114   Dup
115   NullUninit
116   NullUninit
117   FCallCtor <LockWhileUnwinding> 0 1 "" - "" ""
118   PopC
119   LockObj
120   SetL $obj
121   PopC
123   CGetL $obj
124   NullUninit
125   NullUninit
126   FCallObjMethodD <> 0 1 "" - "" "" NullThrows "frob"
127   PopC
129   CGetL $obj
130   NullUninit
131   NullUninit
132   FCallObjMethodD <> 0 1 "" - "" "" NullThrows "yo"
133   PopC
135   Int 1
136   RetC