kolibrios/programs/develop/ktcc/trunk
superturbocat2001 dc1e174943 Disabled static linking when building Linux version of TCC.
git-svn-id: svn://kolibrios.org@8274 a494cfbc-eb01-0410-851d-a64ba20cac60
2020-11-28 20:57:58 +00:00
..
bin Disabled static linking when building Linux version of TCC. 2020-11-28 20:57:58 +00:00
lib Remove libconsole.a and libbox_lib.a and their sources 2020-10-18 11:07:44 +00:00
libc Ktcc: 2020-11-10 18:53:57 +00:00
libctest better suballocator 2018-11-07 17:27:07 +00:00
samples - Added TEAtool source files 2020-11-24 15:13:42 +00:00
source Disabled static linking when building Linux version of TCC. 2020-11-28 20:57:58 +00:00
_howto_debug_tcc.txt TCC: join two dirs into one 2020-04-30 09:59:56 +00:00
readme.txt suballocator plus path fixes 2018-11-01 17:24:22 +00:00

see 
source/readme.*
source/changelog
source/tcc-doc.info or  .texi

building Kolibri version 
>make -f Makefile.kos32 

========= for compiler developers =========
read .\source\readme_kos32.txt

------ TODO -------
-more libc stardard functions. see report below 
-more Kolibly SysFn wrappers. see \libc\KOSfuncs_inc_status.txt
-add stdin, stderr, stdout emulation íå õâàòàåò stdin, stdout - ìîæíî ñäåëàòü êàê stderr!, íî íàäî âîçèòüñÿ çàîäíî ñ ferror & feof
-getchar, gets if returs errorcode  (0, null) - you must exit program, because of closed console window  
-ïðè íîðìàëüíîì âûõîäå çàêðûâàòü êîíñîëü


------ errors ------
-åñëè ïðîåêò ìíîãîôàéëîâûé - .dbg ãåíåðèò äóáëèðóþùèåñÿ ìåòêè äàííûõ, òèïà L.78 ìîæåò óêàçûâàòü íà äðóãîé ñåãìåíò (
-.dbg sometimes generated improperly for source code labels

----- fixed errors ------
-if static var sized more than 14096+ -> crash compiled .exe (kos) 
(^ default stack size set at compile time tccmeos:177 is below 4k)
FIX - use -stack=1280000 option
-con_set_title is NULL. fixed 180128 
-not working: default search path are ./include ./lib from executable (under KOS need to use -Bpath_to_ktcc)
--start.o not found using -B (kos) - put near your.c file  fixed 181027



========= libc ===========
-no "finished" in title of console program after exit console - use con_exit()
-used system memory allocator (4096 bytes minimum)


libc not complete. overall status:
no files:
limits.h
locale.h
setjmp.h
signal.h
wchar.h
wctype.h



functions absent list:

stdio.h:
remove
rename
tmpfile
tmpnam
freopen
setbuf
setvbuf


stdlib.h:
atexit
getenv
system
bsearch
qsort
mblen
mbtowc
wctomb
mbstowcs
wcstombs

string.h:
strxfrm

time.h:  - needs include kos32sys1.h
asctime
ctime
gmtime
localtime - non standard
strftime






            Status or libc tests

---FAILED---
strtoul incorrect work with big unsigned > MAX_LONG


---NOT TESTED---
no library fns realized
qsort
time

---HANG---
sscanf
>TEST_F(0x1234p56) - no %a formats


---STACK IS SMALL---
use new -stack=1280000 option to pass test
tstring	
strtodlong


--other--
fscanf 
-?scanf ignores width specs, '*' and [chars], cant read %a float
-%n counts as parameter

snprintf
-some format misturbances
-may incorrect prints unsigned > 2147483647L

ungetc
-ungetc fails if filepos == 0 - by design

all file ops limited to 2Gb