/* { dg-require-effective-target label_values } */ void abort (void); void exit (int); int x (int i) { void *j[] = {&&x, &&y, &&z}; goto *j[i]; x:return 2; y:return 3; z:return 5; } int main (void) { if (x (0) != 2 || x (1) != 3 || x (2) != 5) abort(); exit(0); }