Add proper variadic parameter support to HHAS files
Summary:
The HHAS parser was treating any function with a parameter list ending
with ... as being MayUseVV. This was effectively a way to indicate you expected
the function to be called with extra parameters. Instead, modify the parser to
treat as ... in the last parameter the same as normal PHP functions. It
indicates a named variadic argument. The presence of such an argument no longer
implies MayUseVV. The function should have the [mayusevv] attribute if it needs
it.
Modify array_map to use a named variadic argument, and forward the arguments to
the builtin in a way that doesn't require MayUseVV. This allows us to inline
array_map in the normal cases.
Reviewed By: markw65
Differential Revision:
D3854227
fbshipit-source-id:
1105bf405859ecc0aa8d24549e58d4d9e83ae7f1