summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
b126a7b)
The parser is currently using strcpy to copy constant empty strings; it
is just as easy to explicitly assign the single zero byte instead.
Since these are the only use of strcpy in the library, and for whatever
reason GCC is not optimizing out these strcpy calls, on ELF hosts this
saves a PLT entry in the shared library and everything associated with
that too.
vla_ident: T_IDENT | T_ASTERISK {
ALLOC($$, sizeof "");
vla_ident: T_IDENT | T_ASTERISK {
ALLOC($$, sizeof "");
}
array: T_LBRACKET array_length T_RBRACKET {
}
array: T_LBRACKET array_length T_RBRACKET {
english_vla: T_IDENT | {
ALLOC($$, sizeof "");
english_vla: T_IDENT | {
ALLOC($$, sizeof "");