tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Tinycc-devel] Differences between libtcc in "0.9.27 (x86_64 Linux)" and


From: Dwight Schauer
Subject: [Tinycc-devel] Differences between libtcc in "0.9.27 (x86_64 Linux)" and "0.9.27 - 0378168 (x86_64 Linux)" and some unexpected behavior
Date: Wed, 09 Jun 2021 22:23:38 -0500
User-agent: Evolution 3.36.4-0ubuntu1

Hello TinyCC developers and user,

I recently started using libtcc and for the most part it is going well.
The documentation in the header file is straight forward enough.


However, I ran into issues the stock libtcc that is available in arch
linux without going through the AUR, so I switched to the mob branch,
and am running into some issues with that well.

1) tcc version 0.9.27 (x86_64 Linux) # installed with arch linux
stock libtcc below refers to this one

2) tcc version 0.9.27 - 0378168 (x86_64 Linux)
# commit 0378168c1318352bf13f24f210a23aa2fbeb1895


"0.9.27" (installed with arch linux, not from AUR)
does not have tcc_list_symbols

So I cloned the mob branch from https://repo.or.cz/tinycc.git
Built that, it is "0.9.27 - 0378168" and has tcc_list_symbols


With "0.9.27 - 0378168" I get some unexpected behavior.

1) the byte sizes of compilation units (separate libtcc states)
are about 8K larger each than with the stock libtcc

2) with "-Wunsupported -Wall -Werror" tcc_compile_string exits the
entire program rather than returning non zero for non supported or
bogus flags.

3) compilation errors don't result in a non zero exit
I use relocation size (is -1 on error) and the error callback to
determine failure.
With the stock libtcc I got non zero returns from tcc_compile_string on
compilation errors.

4) "-b" needs __bound_strlen, but the new libtcc.so does not have that
symbol
seems to work fine when I provide the address of strlen for
__bound_strlen

I may look into what is causing 2 and 3, because they may be related.

Ok, some background. I'm using libtcc in an interactive environment, so
#2 is annoying. I don't want to have the program exit, I want to see
the error message and correct the problem. Eventually I'll be doing all
compilation libtcc and code running in forked process, so this will be
less of an issue, apart from having to recompile everything when I
restart that process due to a faulty exit.


But also the other unexpected behavior concerns me, so I'm asking if
any of you know anything about these issues.

Sincerely,
Dwight Schauer





reply via email to

[Prev in Thread] Current Thread [Next in Thread]