2 * Copyright (c) 2018, Facebook, Inc.
5 * This source code is licensed under the MIT license found in the
6 * LICENSE file in the "hack" directory of this source tree.
13 module GenErr
(M
: Errors.Error_category
) = struct
14 let generate_errors buffer name
=
15 add_string buffer
@@ sprintf
"%s Errors:\n" name
;
16 for i
= M.min
to M.max
do
17 match M.of_enum i
with
18 | Some err
-> add_string buffer
@@ sprintf
"%s = %d\n" (M.show err
) i
21 add_string buffer
"\n"
24 module P
= GenErr
(Errors.Parsing
)
25 module N
= GenErr
(Errors.Naming
)
26 module NC
= GenErr
(Errors.NastCheck
)
27 module T
= GenErr
(Errors.Typing
)
29 let gen_error_map_content () : string =
30 let buffer = create
4096 in
31 P.generate_errors buffer "Parsing";
32 N.generate_errors buffer "Naming";
33 NC.generate_errors buffer "NastCheck";
34 T.generate_errors buffer "Typing";
38 Please modify the error map below if you have changed the error codes.
41 let%expect_test
"error_map" =
42 let map = gen_error_map_content () in
43 Printf.printf
"%s\n" map;
49 UnexpectedEofDEPRECATED
= 1003
50 UnterminatedCommentDEPRECATED
= 1004
51 UnterminatedXhpCommentDEPRECATED
= 1005
52 CallTimePassByReferenceDEPRECATED
= 1006
53 XhpParsingError
= 1007
57 TypeparamAlokDEPRECATED
= 2002
59 PrimitiveInvalidAlias
= 2004
60 CyclicConstraintDEPRECATED
= 2005
61 DidYouMeanNaming
= 2006
62 DifferentScopeDEPRECATED
= 2007
63 DisallowedXhpType
= 2008
64 DoubleInsteadOfFloatDEPRECATED
= 2009
65 DynamicClassDEPRECATED
= 2010
67 ErrorNameAlreadyBound
= 2012
68 ExpectedCollection
= 2013
69 ExpectedVariable
= 2014
70 FdNameAlreadyBound
= 2015
71 GenArrayRecArityDEPRECATED
= 2016
72 GenArrayVaRecArityDEPRECATED
= 2017
73 GenaArityDEPRECATED
= 2018
74 GenericClassVarDEPRECATED
= 2019
75 GenvaArityDEPRECATED
= 2020
77 IllegalClassMeth
= 2022
78 IllegalConstant
= 2023
80 IllegalInstMeth
= 2025
81 IllegalMethCaller
= 2026
83 IntegerInsteadOfIntDEPRECATED
= 2028
84 InvalidReqExtends
= 2029
85 InvalidReqImplements
= 2030
86 LocalConstDEPRECATED
= 2031
88 MethodNameAlreadyBound
= 2033
90 MissingTypehint
= 2035
91 NameAlreadyBound
= 2036
92 NamingTooFewArguments
= 2037
93 NamingTooManyArguments
= 2038
94 PrimitiveToplevel
= 2039
95 RealInsteadOfFloatDEPRECATED
= 2040
96 ShadowedTypeParam
= 2041
98 ThisMustBeReturn
= 2043
100 ThisHintOutsideClass
= 2045
102 TparamWithTparam
= 2047
103 TypedefConstraintDEPRECATED
= 2048
106 UnexpectedArrow
= 2051
107 UnexpectedTypedef
= 2052
108 UsingInternalClass
= 2053
112 NullsafePropertyAccessDEPRECATED
= 2057
114 ShapeTypehintDEPRECATED
= 2059
115 DynamicNewInStrictMode
= 2060
116 InvalidTypeAccessRoot
= 2061
117 DuplicateUserAttribute
= 2062
118 ReturnOnlyTypehint
= 2063
119 UnexpectedTypeArguments
= 2064
120 TooManyTypeArguments
= 2065
121 ClassnameParam
= 2066
122 InvalidInstanceofDEPRECATED
= 2067
123 NameIsReserved
= 2068
124 DollardollarUnused
= 2069
125 IllegalMemberVariableClass
= 2070
126 TooFewTypeArguments
= 2071
127 GotoLabelAlreadyDefined
= 2072
128 GotoLabelUndefined
= 2073
129 GotoLabelDefinedInFinally
= 2074
130 GotoInvokedInFinally
= 2075
131 DynamicClassPropertyNameInStrictModeDEPRECATED
= 2076
132 ThisAsLexicalVariable
= 2077
133 DynamicClassNameInStrictMode
= 2078
134 XhpOptionalRequiredAttr
= 2079
135 XhpRequiredWithDefault
= 2080
136 VariableVariablesDisallowedDEPRECATED
= 2081
137 ArrayTypehintsDisallowed
= 2082
138 ArrayLiteralsDisallowed
= 2083
139 WildcardDisallowed
= 2084
140 AttributeClassNameConflict
= 2085
141 MethodNeedsVisibility
= 2086
142 ReferenceInStrictModeDEPRECATED
= 2087
143 ReferenceInRxDEPRECATED
= 2088
144 DeclareStatementDEPRECATED
= 2089
145 MisplacedRxOfScopeDEPRECATED
= 2090
146 RxOfScopeAndExplicitRxDEPRECATED
= 2091
147 UnsupportedFeatureDEPRECATED
= 2092
148 TraitInterfaceConstructorPromoDEPRECATED
= 2093
149 NonstaticPropertyWithLSB
= 2094
150 ReferenceInAnonUseClauseDEPRECATED
= 2095
151 RxMoveInvalidLocation
= 2096
152 MisplacedMutabilityHint
= 2097
153 MutabilityHintInNonRx
= 2098
154 InvalidReturnMutableHint
= 2099
155 NoTparamsOnTypeConstsDEPRECATED
= 2100
156 PocketUniversesDuplication
= 2101
157 UnsupportedTraitUseAs
= 2102
158 UnsupportedInsteadOf
= 2103
159 InvalidTraitUseAsVisibility
= 2104
160 InvalidFunPointer
= 2105
161 IllegalUseOfDynamicallyCallable
= 2106
162 PocketUniversesNotInClass
= 2107
163 PocketUniversesAtomMissing
= 2108
164 PocketUniversesAtomUnknown
= 2109
165 PocketUniversesLocalization
= 2110
166 ClassMethNonFinalSelf
= 2111
170 AbstractWithBody
= 3002
171 AwaitInSyncFunction
= 3003
172 CallBeforeInit
= 3004
173 CaseFallthrough
= 3005
174 ContinueInSwitch
= 3006
175 DangerousMethodNameDEPRECATED
= 3007
176 DefaultFallthrough
= 3008
177 InterfaceWithMemberVariable
= 3009
178 InterfaceWithStaticMemberVariable
= 3010
180 NoConstructParent
= 3012
182 NotAbstractWithoutBody
= 3014
183 NotInitialized
= 3015
184 NotPublicInterface
= 3016
185 RequiresNonClass
= 3017
186 ReturnInFinally
= 3018
188 ToStringReturnsString
= 3020
189 ToStringVisibility
= 3021
191 ToplevelContinue
= 3023
193 IllegalFunctionName
= 3025
194 NotAbstractWithoutTypeconst
= 3026
195 TypeconstDependsOnExternalTparam
= 3027
196 TypeconstAssignedTparamDEPRECATED
= 3028
197 AbstractWithTypeconstDEPRECATED
= 3029
198 ConstructorRequired
= 3030
199 InterfaceWithPartialTypeconst
= 3031
200 MultipleXhpCategory
= 3032
201 OptionalShapeFieldsNotSupportedDEPRECATED
= 3033
202 AwaitNotAllowedDEPRECATED
= 3034
203 AsyncInInterfaceDEPRECATED
= 3035
204 AwaitInCoroutine
= 3036
205 YieldInCoroutine
= 3037
206 SuspendOutsideOfCoroutine
= 3038
207 SuspendInFinally
= 3039
208 BreakContinueNNotSupportedDEPRECATED
= 3040
209 StaticMemoizedFunction
= 3041
210 InoutParamsInCoroutine
= 3042
211 InoutParamsSpecial
= 3043
212 InoutParamsMixByrefDEPRECATED
= 3044
213 InoutParamsMemoize
= 3045
214 InoutParamsRetByRefDEPRECATED
= 3046
215 ReadingFromAppend
= 3047
216 ConstAttributeProhibitedDEPRECATED
= 3048
217 RetiredError3049DEPRECATED
= 3049
218 InoutArgumentBadExpr
= 3050
219 MutableParamsOutsideOfSyncDEPRECATED
= 3051
220 MutableAsyncMethodDEPRECATED
= 3052
221 MutableMethodsMustBeReactive
= 3053
222 MutableAttributeOnFunction
= 3054
223 MutableReturnAnnotatedDeclsMustBeReactive
= 3055
224 IllegalDestructor
= 3056
225 ConditionallyReactiveFunctionDEPRECATED
= 3057
226 MultipleConditionallyReactiveAnnotations
= 3058
227 ConditionallyReactiveAnnotationInvalidArguments
= 3059
228 MissingReactivityForConditionDEPRECATED
= 3060
229 MultipleReactivityAnnotationsDEPRECATED
= 3061
230 RxIsEnabledInvalidLocation
= 3062
231 MaybeRxInvalidLocation
= 3063
232 NoOnlyrxIfRxfuncForRxIfArgs
= 3064
233 CoroutineInConstructor
= 3065
234 IllegalReturnByRefDEPRECATED
= 3066
235 IllegalByRefExprDEPRECATED
= 3067
236 VariadicByRefParamDEPRECATED
= 3068
237 MaybeMutableAttributeOnFunction
= 3069
238 ConflictingMutableAndMaybeMutableAttributes
= 3070
239 MaybeMutableMethodsMustBeReactive
= 3071
240 RequiresFinalClass
= 3072
241 InterfaceUsesTrait
= 3073
242 NonstaticMethodInAbstractFinalClass
= 3074
243 MutableOnStaticDEPRECATED
= 3075
244 ClassnameConstInstanceOfDEPRECATED
= 3076
245 ByRefParamOnConstructDEPRECATED
= 3077
246 ByRefDynamicCallDEPRECATED
= 3078
247 ByRefPropertyDEPRECATED
= 3079
248 ByRefCallDEPRECATED
= 3080
249 SwitchNonTerminalDefault
= 3081
250 SwitchMultipleDefault
= 3082
251 RepeatedRecordFieldName
= 3083
252 PhpLambdaDisallowed
= 3084
255 AbstractClassFinalDEPRECATED
= 4001
256 UninstantiableClass
= 4002
257 AnonymousRecursiveDEPRECATED
= 4003
258 AnonymousRecursiveCallDEPRECATED
= 4004
259 ArrayAccessRead
= 4005
264 ClassArityDEPRECATED
= 4010
266 ConstructorNoArgs
= 4012
267 CyclicClassDef
= 4013
269 DiscardedAwaitable
= 4015
270 IssetEmptyInStrict
= 4016
271 DynamicYieldPrivateDEPRECATED
= 4017
272 EnumConstantTypeBad
= 4018
273 EnumSwitchNonexhaustive
= 4019
274 EnumSwitchNotConst
= 4020
275 EnumSwitchRedundant
= 4021
276 EnumSwitchRedundantDefault
= 4022
277 EnumSwitchWrongClass
= 4023
279 EnumTypeTypedefMixedDEPRECATED
= 4025
281 ExpectedLiteralFormatString
= 4027
282 ExpectedStaticIntDEPRECATED
= 4028
283 ExpectedTparam
= 4029
284 ExpectingReturnTypeHint
= 4030
285 ExpectingReturnTypeHintSuggestDEPRECATED
= 4031
286 ExpectingTypeHint
= 4032
287 ExpectingTypeHintVariadic
= 4033
288 RetiredError4034DEPRECATED
= 4034
291 FieldMissingDEPRECATED
= 4037
293 FunArityMismatch
= 4039
295 FunTooManyArgs
= 4041
296 FunUnexpectedNonvariadic
= 4042
297 FunVariadicityHhVsPhp56
= 4043
298 GenaExpectsArrayDEPRECATED
= 4044
299 GenericArrayStrict
= 4045
301 ImplementAbstract
= 4047
302 InterfaceFinalDEPRECATED
= 4048
303 InvalidShapeFieldConst
= 4049
304 InvalidShapeFieldLiteral
= 4050
305 InvalidShapeFieldName
= 4051
306 InvalidShapeFieldType
= 4052
307 MemberNotFound
= 4053
308 MemberNotImplemented
= 4054
310 MissingConstructor
= 4056
312 NegativeTupleIndexDEPRECATED
= 4058
313 SelfOutsideClass
= 4059
314 NewStaticInconsistent
= 4060
315 StaticOutsideClass
= 4061
316 NonObjectMemberRead
= 4062
318 NullMemberRead
= 4064
319 NullableParameterDEPRECATED
= 4065
320 OptionReturnOnlyTypehint
= 4066
323 OverflowDEPRECATED
= 4069
325 OverridePerTrait
= 4071
326 PairArityDEPRECATED
= 4072
329 ParentOutsideClass
= 4075
330 ParentUndefined
= 4076
331 PreviousDefault
= 4077
332 PrivateClassMeth
= 4078
333 PrivateInstMeth
= 4079
334 PrivateOverride
= 4080
335 ProtectedClassMeth
= 4081
336 ProtectedInstMeth
= 4082
337 ReadBeforeWrite
= 4083
339 ShapeFieldClassMismatch
= 4085
340 ShapeFieldTypeMismatch
= 4086
341 ShouldBeOverride
= 4087
342 SketchyNullCheckDEPRECATED
= 4088
343 SketchyNullCheckPrimitiveDEPRECATED
= 4089
344 SmemberNotFound
= 4090
346 StaticOverflowDEPRECATED
= 4092
347 RetiredError4093DEPRECATED
= 4093
348 ThisInStaticDEPRECATED
= 4094
349 ThisVarOutsideClass
= 4095
350 TraitFinalDEPRECATED
= 4096
351 TupleArityDEPRECATED
= 4097
352 TupleArityMismatchDEPRECATED
= 4098
353 TupleIndexTooLargeDEPRECATED
= 4099
355 TypeArityMismatch
= 4101
356 TypeParamArityDEPRECATED
= 4102
357 RetiredError4103DEPRECATED
= 4103
358 TypingTooFewArgs
= 4104
359 TypingTooManyArgs
= 4105
361 UnboundNameTyping
= 4107
362 UndefinedField
= 4108
363 UndefinedParent
= 4109
365 UnsatisfiedReq
= 4111
367 VisibilityExtends
= 4113
368 VoidParameterDEPRECATED
= 4114
369 WrongExtendKind
= 4115
371 NullsafeNotNeeded
= 4117
372 TrivialStrictEq
= 4118
374 DeclaredCovariant
= 4120
375 DeclaredContravariant
= 4121
376 UnsetInStrictDEPRECATED
= 4122
377 StrictMembersNotKnown
= 4123
378 ErasedGenericAtRuntime
= 4124
379 DynamicClassDEPRECATED
= 4125
380 AttributeTooManyArguments
= 4126
381 AttributeParamType
= 4127
383 AbstractConstUsage
= 4129
384 CannotDeclareConstant
= 4130
385 CyclicTypeconst
= 4131
386 NullsafePropertyWriteContext
= 4132
388 ThisLvalueDEPRECATED
= 4134
389 UnsetNonidxInStrict
= 4135
390 InvalidShapeFieldNameEmpty
= 4136
391 InvalidShapeFieldNameNumberDEPRECATED
= 4137
392 ShapeFieldsUnknown
= 4138
393 InvalidShapeRemoveKey
= 4139
394 MissingOptionalFieldDEPRECATED
= 4140
395 ShapeFieldUnset
= 4141
396 AbstractConcreteOverride
= 4142
397 LocalVariableModifedAndUsed
= 4143
398 LocalVariableModifedTwice
= 4144
399 AssignDuringCase
= 4145
400 CyclicEnumConstraint
= 4146
401 UnpackingDisallowed
= 4147
402 InvalidClassname
= 4148
403 InvalidMemoizedParam
= 4149
404 IllegalTypeStructure
= 4150
405 NotNullableCompareNullTrivial
= 4151
406 ClassPropertyOnlyStaticLiteralDEPRECATED
= 4152
407 AttributeTooFewArguments
= 4153
408 ReferenceExprDEPRECATED
= 4154
409 UnificationCycle
= 4155
411 EqIncompatibleTypes
= 4157
412 ContravariantThis
= 4158
413 InstanceofAlwaysFalseDEPRECATED
= 4159
414 InstanceofAlwaysTrueDEPRECATED
= 4160
415 AmbiguousMember
= 4161
416 InstanceofGenericClassnameDEPRECATED
= 4162
417 RequiredFieldIsOptional
= 4163
419 ArrayGetWithOptionalField
= 4165
420 UnknownFieldDisallowedInShape
= 4166
422 PassByRefAnnotationMissingDEPRECATED
= 4168
423 NonCallArgumentInSuspend
= 4169
424 NonCoroutineCallInSuspend
= 4170
425 CoroutineCallOutsideOfSuspend
= 4171
426 FunctionIsNotCoroutine
= 4172
427 CoroutinnessMismatch
= 4173
428 ExpectingAwaitableReturnTypeHint
= 4174
429 ReffinessInvariantDEPRECATED
= 4175
430 DollardollarLvalue
= 4176
431 StaticMethodOnInterfaceDEPRECATED
= 4177
432 DuplicateUsingVar
= 4178
433 IllegalDisposable
= 4179
434 EscapingDisposable
= 4180
435 PassByRefAnnotationUnexpectedDEPRECATED
= 4181
436 InoutAnnotationMissing
= 4182
437 InoutAnnotationUnexpected
= 4183
438 InoutnessMismatch
= 4184
439 StaticSyntheticMethod
= 4185
441 InvalidNewDisposable
= 4187
442 EscapingDisposableParameter
= 4188
443 AcceptDisposableInvariant
= 4189
444 InvalidDisposableHint
= 4190
447 IllegalXhpChild
= 4193
448 MustExtendDisposable
= 4194
449 InvalidIsAsExpressionHint
= 4195
450 AssigningToConst
= 4196
451 SelfConstParentNot
= 4197
452 ParentConstSelfNotDEPRECATED
= 4198
453 PartiallyValidIsAsExpressionHintDEPRECATED
= 4199
454 NonreactiveFunctionCall
= 4200
455 NonreactiveIndexing
= 4201
456 ObjSetReactive
= 4202
457 FunReactivityMismatch
= 4203
458 OverridingPropConstMismatch
= 4204
459 InvalidReturnDisposable
= 4205
460 InvalidDisposableReturnHint
= 4206
461 ReturnDisposableMismatch
= 4207
462 InoutArgumentBadType
= 4208
463 InconsistentUnsetDEPRECATED
= 4209
464 ReassignMutableVar
= 4210
465 InvalidFreezeTarget
= 4211
466 InvalidFreezeUse
= 4212
467 FreezeInNonreactiveContext
= 4213
468 MutableCallOnImmutable
= 4214
469 MutableArgumentMismatch
= 4215
470 InvalidMutableReturnResult
= 4216
471 MutableReturnResultMismatch
= 4217
472 NonreactiveCallFromShallow
= 4218
473 EnumTypeTypedefNonnull
= 4219
474 RxEnabledInNonRxContext
= 4220
475 RxEnabledInLambdasDEPRECATED
= 4221
476 AmbiguousLambda
= 4222
477 EllipsisStrictMode
= 4223
478 UntypedLambdaStrictMode
= 4224
479 BindingRefInArrayDEPRECATED
= 4225
480 EchoInReactiveContext
= 4226
481 SuperglobalInReactiveContext
= 4227
482 StaticPropertyInReactiveContext
= 4228
483 StaticInReactiveContextDEPRECATED
= 4229
484 GlobalInReactiveContextDEPRECATED
= 4230
485 WrongExpressionKindAttribute
= 4231
486 AttributeClassNoConstructorArgsDEPRECATED
= 4232
487 InvalidTypeForOnlyrxIfRxfuncParameter
= 4233
488 MissingAnnotationForOnlyrxIfRxfuncParameter
= 4234
489 CannotReturnBorrowedValueAsImmutable
= 4235
490 DeclOverrideMissingHint
= 4236
491 InvalidConditionallyReactiveCall
= 4237
493 SealedFinalDEPRECATED
= 4239
494 ComparisonInvalidTypes
= 4240
495 OptionVoidDEPRECATED
= 4241
496 MutableInNonreactiveContext
= 4242
497 InvalidArgumentOfRxMutableFunction
= 4243
498 LetVarImmutabilityViolation
= 4244
499 UnsealableDEPRECATED
= 4245
500 ReturnVoidToRxMismatch
= 4246
501 ReturnsVoidToRxAsNonExpressionStatement
= 4247
502 NonawaitedAwaitableInReactiveContext
= 4248
503 ShapesKeyExistsAlwaysTrue
= 4249
504 ShapesKeyExistsAlwaysFalse
= 4250
505 ShapesMethodAccessWithNonExistentField
= 4251
506 NonClassMember
= 4252
507 PassingArrayCellByRefDEPRECATED
= 4253
508 CallSiteReactivityMismatch
= 4254
509 RxParameterConditionMismatch
= 4255
510 AmbiguousObjectAccess
= 4256
512 ReassignMaybeMutableVar
= 4258
513 MaybeMutableArgumentMismatch
= 4259
514 ImmutableArgumentMismatch
= 4260
515 ImmutableCallOnMutable
= 4261
516 InvalidCallMaybeMutable
= 4262
517 MutabilityMismatch
= 4263
518 InvalidPPLCall
= 4264
519 InvalidPPLStaticCall
= 4265
520 TypeTestInLambdaDEPRECATED
= 4266
521 InvalidTraversableInRx
= 4267
522 ReassignMutableThis
= 4268
523 MutableExpressionAsMultipleMutableArguments
= 4269
524 InvalidUnsetTargetInRx
= 4270
525 CoroutineOutsideExperimental
= 4271
526 PPLMethPointer
= 4272
527 InvalidTruthinessTestDEPRECATED
= 4273
528 RePrefixedNonString
= 4274
529 BadRegexPattern
= 4275
530 SketchyTruthinessTestDEPRECATED
= 4276
531 LateInitWithDefault
= 4277
532 OverrideMemoizeLSB
= 4278
533 ClassVarTypeGenericParam
= 4279
534 InvalidSwitchCaseValueType
= 4280
536 BadLateInitOverride
= 4282
537 EscapingMutableObject
= 4283
539 MultipleConcreteDefs
= 4285
540 MoveInNonreactiveContext
= 4286
541 InvalidMoveUse
= 4287
542 InvalidMoveTarget
= 4288
543 IgnoredResultOfFreezeDEPRECATED
= 4289
544 IgnoredResultOfMoveDEPRECATED
= 4290
546 UnserializableType
= 4292
547 InconsistentMutability
= 4293
548 InvalidMutabilityFlavorInAssignment
= 4294
550 UnknownObjectMember
= 4296
552 InvalidArrayKeyRead
= 4298
553 ReferenceExprNotFunctionArgDEPRECATED
= 4299
554 RedundantRxCondition
= 4300
555 RedeclaringMissingMethod
= 4301
556 InvalidEnforceableTypeArgument
= 4302
557 RequireArgsReify
= 4303
558 TypecheckerTimeout
= 4304
559 InvalidReifiedArgument
= 4305
560 GenericsNotAllowed
= 4306
561 InvalidNewableTypeArgument
= 4307
562 InvalidNewableTypeParamConstraints
= 4308
563 NewWithoutNewable
= 4309
564 NewStaticClassReified
= 4310
565 MemoizeReified
= 4311
566 ConsistentConstructReified
= 4312
567 MethodVariance
= 4313
568 MissingXhpRequiredAttr
= 4314
569 BadXhpAttrRequiredOverride
= 4315
570 ReifiedTparamVariadicDEPRECATED
= 4316
571 UnresolvedTypeVariable
= 4317
572 InvalidSubString
= 4318
573 InvalidArrayKeyConstraint
= 4319
574 OverrideNoDefaultTypeconst
= 4320
575 ShapeAccessWithNonExistentField
= 4321
576 DisallowPHPArraysAttr
= 4322
577 TypeConstraintViolation
= 4323
578 IndexTypeMismatch
= 4324
579 ExpectedStringlike
= 4325
580 TypeConstantMismatch
= 4326
581 TypeConstantRedeclarationDEPRECATED
= 4327
582 ConstantDoesNotMatchEnumType
= 4328
583 EnumConstraintMustBeArraykey
= 4329
584 EnumSubtypeMustHaveCompatibleConstraint
= 4330
585 ParameterDefaultValueWrongType
= 4331
586 NewtypeAliasMustSatisfyConstraint
= 4332
587 BadFunctionTypevar
= 4333
588 BadClassTypevar
= 4334
589 BadMethodTypevar
= 4335
590 MissingReturnInNonVoidFunction
= 4336
591 InoutReturnTypeMismatch
= 4337
592 ClassConstantValueDoesNotMatchHint
= 4338
593 ClassPropertyInitializerTypeDoesNotMatchHint
= 4339
594 BadDeclOverride
= 4340
595 BadMethodOverride
= 4341
596 BadEnumExtends
= 4342
597 XhpAttributeValueDoesNotMatchHint
= 4343
598 TraitPropConstClass
= 4344
599 EnumUnderlyingTypeMustBeArraykey
= 4345
600 ClassGetReified
= 4346
601 RequireGenericExplicit
= 4347
602 ClassConstantTypeMismatch
= 4348
603 PocketUniversesExpansion
= 4349
604 PocketUniversesTyping
= 4350
605 RecordInitValueDoesNotMatchHint
= 4351
606 AbstractTconstNotAllowed
= 4352
607 NewAbstractRecord
= 4353
608 RecordMissingRequiredField
= 4354
609 RecordUnknownField
= 4355
610 CyclicRecordDef
= 4356
611 InvalidDestructure
= 4357
612 StaticCallWithClassLevelReifiedGeneric
= 4358
613 SplatArrayRequired
= 4359
614 SplatArrayVariadic
= 4360
615 ExceptionOccurred
= 4361
616 InvalidReifiedFunctionPointer
= 4362
617 BadFunctionPointerConstruction
= 4363
619 TraitReuseInsideClass
= 4365
620 RedundantGeneric
= 4366
621 PocketUniversesInvalidUpperBounds
= 4367
622 PocketUniversesRefinement
= 4368
623 PocketUniversesReservedSyntax
= 4369
624 ArrayAccessWrite
= 4370
625 InvalidArrayKeyWrite
= 4371
626 NullMemberWrite
= 4372
627 NonObjectMemberWrite
= 4373