The code needs to be fixed: use the functions or remove them.
arm-asm.c:
asm_parse_vfp_regvar()
arm64-link:
gotplt_entry_type()
create_plt_entry()
Signed-off-by: Detlef Riekenberg <wine.dev@web.de>
Warnings reported in in x86_64-gen.c and arm-gen.c:
warning: ‘align’ may be used uninitialized in this function [-Wmaybe-uninitialized]
Signed-off-by: Detlef Riekenberg <wine.dev@web.de>
Target buffer must be larger as the format string + the replacement for %s
to avoid a warning [-Wformat-truncation=]
Signed-off-by: Detlef Riekenberg <wine.dev@web.de>
Using the environment CC is a common used feature to
select a compiler to build any software,
so it should be supported when building tcc.
The old way using the parameter --cc still works.
Signed-off-by: Detlef Riekenberg <wine.dev@web.de>
Some headers and source code change macros and
implementation, when __OPTIMIZE_SIZE__ is defined.
This does not change our generated code.
Signed-off-by: Detlef Riekenberg <wine.dev@web.de>
With this code, we can compile more projects,
who expect gcc or clang as compiler. (-std=gnu11 used in Makefiles)
As a further extension, it would be easy to disable gcc extensions
Signed-off-by: Detlef Riekenberg <wine.dev@web.de>
There is no code generation in post_type for vla arrays. This code
generation has to be delayed until gen_function.
- post_type save code in type info.
- gen_function use this code to generate vla code.
- enable testcode for vla arrays.
Modify function parameter parser such that symbols are
put into token-table temporarily. Benefits are:
- detects redefinitions, as with
int foo(int a, int a);
- detects reserved symbols, as with
int foo(int if);
- can parse expressions like
int main(int argc, char *argv[argc + 1]);
- doesn't fix this one
int main(int argc, char *argv[++argc]);
Also: fix unexpected "function might return no value"
with statement expression
int f() { ({ return 0; }); }
By replacing the `-f 2` field selection with `-f 2-`, we select fields
2 and beyond, so that arguments containing the '=' character are not
truncated.
This option qualifier list format is POSIX standard and tested
to work with the `cut` program from:
* GNU coreutils
* macOS (FreeBSD)
* NetBSD
* toybox
* busybox
* uutils-coreutils
In my case, this is useful because I'm trying to use an installation
prefix which contains an equals sign.