tccgen: scope levels for local symbols
commitcaebbc3ee1071ace94003cdf645f749d2b0a9eed
authorgrischka <grischka>
Thu, 5 May 2016 08:39:09 +0000 (5 10:39 +0200)
committergrischka <grischka>
Thu, 5 May 2016 08:39:09 +0000 (5 10:39 +0200)
treef65c8160f99865717871dfec4a958f985e78aee7
parent0fbc77cac6d1dff456f7b6b973944038dc1a59c2
tccgen: scope levels for local symbols

... for fast redeclaration checks

Also, check function parameters too:
    void foo(int a) { int a; ... }

Also, try to fix struct/union/enum's on different scopes:
    { struct xxx { int x; };
         { struct xxx { int y; }; ... }}
and some (probably not all) combination with incomplete
declarations "struct xxx;"

Replaces 2bfedb18675228c3837c23fa523231f55e102c12
and 07d896c8e5d1b46bf4aebd403c78e5f7ffebe02a

Fixes cf95ac399cbce1ea8a519f91dd36a5cfd4ea7943
libtcc.c
tcc.h
tccgen.c