Readonly in emitter flag
[hiphop-php.git] / hphp / test / slow / readonly / dup_check_rocow.hhas
blobfe2733a3d5a4202a8df991c69b5559e9d64be611
2 .file_attributes ["__EnableUnstableFeatures"("""v:1:{s:8:\"readonly\";}""")] ;
3 .adata A_0 = """v:3:{v:1:{i:0;}v:1:{i:1;}v:1:{i:2;}}""";
5 .function{} ["__EntryPoint"("""v:0:{}""")] (15,26) <"HH\\void" N  > test() {
6   .declvars $a $e;
7   .srcloc 16:8,16:16;
8   NewObjD "Bar"
9   Dup
10   NullUninit
11   FCallCtor <LockWhileUnwinding> 0 1 "" "" - "" ""
12   PopC
13   LockObj
14   .srcloc 16:3,16:16;
15   SetL $a
16   .srcloc 16:3,16:17;
17   PopC
18   .srcloc 17:13,17:21;
19   NewObjD "Foo"
20   Dup
21   NullUninit
22   FCallCtor <LockWhileUnwinding> 0 1 "" "" - "" ""
23   PopC
24   LockObj
25   BaseL $a Define
26   .srcloc 17:3,17:9;
27   SetM 0 PT:"foo" Any
28   .srcloc 17:3,17:22;
29   PopC
30   .srcloc 18:16,18:24;
31   NewObjD "Foo"
32   Dup
33   NullUninit
34   FCallCtor <LockWhileUnwinding> 0 1 "" "" - "" ""
35   PopC
36   LockObj
37   BaseL $a Define
38   .srcloc 18:3,18:12;
39   SetM 0 PT:"ro_foo" Any
40   .srcloc 18:3,18:25;
41   PopC
42   .srcloc 19:22,19:23;
43   Int 10
44   .srcloc 19:3,19:18;
45   BaseL $a Define
46   Dim Define PT:"foo" CheckMutROCOW
47   Dim Define PT:"c" Mutable
48   Dim Define EI:0 CheckMutROCOW
49   SetM 0 EI:0 Any
50   .srcloc 19:3,19:24;
51   PopC
52   .try {
53     .srcloc 21:27,21:28;
54     Int 10
55     .srcloc 21:5,21:23;
56     BaseL $a Define
57     Dim Define PT:"ro_foo" Mutable
58     Dim Define PT:"c" CheckMutROCOW
59     Dim Define EI:0 Any
60     SetM 0 EI:0 Any
61     .srcloc 21:5,21:29;
62     PopC
63     .srcloc 20:3,24:109;
64     Jmp L0
65   } .catch {
66     Dup
67     InstanceOfD "Exception"
68     JmpZ L1
69     SetL $e
70     PopC
71     .srcloc 23:5,23:30;
72     NullUninit
73     NullUninit
74     .srcloc 23:14,23:15;
75     CGetL $e
76     NullUninit
77     .srcloc 23:14,23:29;
78     FCallObjMethodD <> 0 1 "" "" - "" "" NullThrows "getMessage"
79     .srcloc 23:5,23:30;
80     FCallFuncD <> 1 1 "0" "" - "" "var_dump"
81     PopC
82     .srcloc 20:3,24:109;
83     Jmp L0
84   L1:
85     Throw
86   }
87 L0:
88   .srcloc 25:26,25:27;
89   Int 10
90   .srcloc 25:3,25:22;
91   BaseL $a Define
92   Dim Define PT:"foo" Mutable
93   Dim Define PT:"bad_c" Any
94   Dim Define EI:0 Mutable
95   SetM 0 EI:0 Any
96   .srcloc 25:3,25:28;
97   PopC
98   .srcloc 26:2,26:2;
99   Null
100   RetC
103 .class {}  Foo (4,7) {
104   .property [public readonly] <"HH\\vec<HH\\int>" "HH\\vec" extended_hint > c =
105     """v:3:{v:1:{i:0;}v:1:{i:1;}v:1:{i:2;}}""";
106   .property [public deep_init readonly] <"HH\\Vector<HH\\int>" "HH\\Vector" extended_hint > bad_c =
107     uninit;
108   .method{}{} [private static no_injection] (4,7) 86pinit() {
109     .srcloc 4:1,7:146;
110     CheckProp "bad_c"
111     JmpNZ L0
112     .srcloc 6:40,6:45;
113     Vec @A_0
114     ColFromArray Vector
115     .srcloc 4:1,7:146;
116     InitProp "bad_c" NonStatic
117   L0:
118     Null
119     RetC
120   }
123 .class {}  Bar (9,12) {
124   .property [public sys_initial_val] <"Foo" "Foo" extended_hint > foo =
125     """N;""";
126   .property [public readonly sys_initial_val] <"Foo" "Foo" extended_hint > ro_foo =
127     """N;""";