+/*----- Benchmark environment scaffolding ---------------------------------*/
+
+/* --- @tvec_benchsetup@ --- *
+ *
+ * Arguments: @struct tvec_state *tv@ = test vector state
+ * @const struct tvec_env *env@ = environment description
+ * @void *pctx@ = parent context (ignored)
+ * @void *ctx@ = context pointer to initialize
+ *
+ * Returns: Zero on success, @-1@ on failure.
+ *
+ * Use: Initialize a benchmarking environment context.
+ *
+ * The environment description must really be a @struct
+ * tvec_bench@. If the @bst@ slot is null, then a temporary
+ * benchmark state is allocated for the current test group and
+ * released at the end. Otherwise, it must be the address of a
+ * pointer to a benchmark state: if the pointer is null, then a
+ * fresh state is allocated and initialized and the pointer is
+ * updated; otherwise, the pointer is assumed to refer to an
+ * existing valid benchmark state.
+ */
+