This code compiles fine without errors.

```
#include <stdio.h>
#define N 10000

int main(void){
    int t;
    for(int i = 0, t = 1; i < 100; ++i){
        printf("%i\n", i);
    }
}

```

However, if you reverse the order of `i` and `t`, it won't compile.

```
#include <stdio.h>
#define N 10000

int main(void){
    int t;
    for(t= 1, int i = 0; i < 100; ++i){
        printf("%i\n", i);
    }
}

```

`error: expected expression before int`

Is this intentional? Why would it act like this? I'm using GCC with C11.