diff --git a/skeletons/OBJECT_IDENTIFIER.c b/skeletons/OBJECT_IDENTIFIER.c index 0f71307153adc1d633ba5def16b4b725bd15b6fb..216aed832e5a43ca5f52c9fb4eacbf28ffb6d419 100644 --- a/skeletons/OBJECT_IDENTIFIER.c +++ b/skeletons/OBJECT_IDENTIFIER.c @@ -509,9 +509,13 @@ OBJECT_IDENTIFIER_set_arcs(OBJECT_IDENTIFIER_t *oid, void *arcs, unsigned int ar * These require special treatment. */ { + uint8_t *tp; +#ifdef __GNUC__ uint8_t first_value[1 + arc_type_size]; /* of two arcs */ +#else + uint8_t *first_value = alloca(1 + arc_type_size); +#endif uint8_t *fv = first_value; - uint8_t *tp; /* * Simulate first_value = arc0 * 40 + arc1;