Perl 6 - the future is here, just unevenly distributed

IRC log for #divine, 2013-08-23

| Channels | #divine index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
06:49 xstill hm, ono to možná nebude chyba v divine
06:49 xstill jsem zjistil, že je kompilovaný proti llvm-3.2 a .bc je dělané clang-3.3
06:54 xstill večer to ověřím, kompilace trvá moc dlouho
07:15 mornfall ok; já snad mezičasem konečně hnu s divinem někam :-)
15:22 xstill jo tak když jsem to přeložil s 3.3 tak to funguje
15:25 xstill akorát jsem to v tracu špatně vyresolvoval jako fixed
15:45 mornfall to můžeš změnit dodatečně, myslim
15:45 mornfall ale segvit by to stejně nemuselo :-)
15:48 xstill no já ne asi, leda bych to znova otevřel
15:48 mornfall zajímavé
15:48 mornfall ale asi to je jedno
15:48 mornfall zase mi došlo místo na disku, kruci :-)
15:48 xstill no on to byl SEGV v libllvm nebo kde
15:48 xstill takže jedině bys mohl detekovat čím to bylo přeložené pokud to v tom souboru je
15:49 mornfall mohla (měla) by tam být verze bitkódu nebo tak něco
15:51 xstill no tak potom by to šlo, že bys to porovnal s verzí knihovny
15:51 mornfall no, nevim teda
15:54 xstill co?
15:55 mornfall jak to poznat :-)
15:58 xstill nevím -- ty jsi odborník na llvm :-D
16:10 mornfall jasně :-) já na něco přijdu
16:37 xstill new nesimuluje selhání?
16:47 xstill co znamená "BAD ARGUMENT (thread 0): <_ZSt32__enable_shared_from_this_helperILN9__gnu_cxx12_Lock_policyE2EEvRKSt14__shared_countIXT_EEz> << %2 = alloca %"class.std::__shared_count"*, align 8 >>
16:47 xstill EXIT"
16:47 xstill ?
16:47 xstill když to přeložím a spustím tak to funguje
16:49 xstill teda kromě toho, že to znamená, že shared_ptr nefunguje v divine
17:12 xstill ono to tak vypadá, že se to pokusí vyhodit výjimku
17:12 xstill 0: <_Znwm> << %1 = alloca %"class.std::exception"*, align 8 >> (internal)
17:18 xstill možná bysme mohly v -d výstupu volitelně demanglovat
17:18 mornfall :-)
17:19 mornfall mohli (a spisovně navíc bychom ;-)
17:20 mornfall bad argument může znamenat tři věci:
17:20 mornfall - neexistuje funkce
17:21 mornfall - reálný parametry neodpovídají formálním
17:21 mornfall - parametr free není výsledek malloc-u ani nula
17:21 mornfall proč by se to mělo stát v alloca mi ale není tak úplně jasné :-))
17:21 mornfall možná neumíme ten align co tam je
17:22 xstill on ten shared_ptr vůbec dělá problém
17:22 mornfall nechce se ti ho odmazat v llvm-dis a pak to llvm-as?
17:22 xstill teď mi hodil bad dereference
17:22 xstill jo no pokud se mi ještě podaří najít ten kód, se v něm hrabu pořád
17:24 xstill mám to
17:24 mornfall počkej to je taky ale blbost... hmh
17:25 mornfall alloca není call :-)
17:25 xstill akorát teda nevím jak bych to v tom hledal
17:26 mornfall já nějak nevidim jak by alloca mohla vyrobit bad argument teda
17:26 mornfall ale už jsem to viděl taky někde
17:26 mornfall to bude zase veselej bug :-)
17:27 xstill jako můžu ti ten zdroják nahrát do tracu
17:27 mornfall jo to asi můžeš
17:35 xstill máš to tam
17:36 mornfall ď
17:39 xstill std::stringstream nefunguje
17:55 xstill proč je __divine_assert( int ) a ne bool? Dělá to problém v C++.
17:55 xstill ale ono je to kvůli c89
17:55 xstill asi
18:00 mornfall no, v klasickým C bool prostě neexistuje :-)
18:00 mornfall a v C99 to není builtin ale makro
18:03 xstill jo no vyřečím to na úrovni divine.h tak že pokud je c++ tak tam dám static_cast< bool >
18:04 mornfall static_cast< int > spíš, ne?
18:05 xstill ne, protože třeba shared_ptr má operator bool ale na int ne
18:05 xstill a bool -> int je implicitní
18:09 xstill hm, ale podle cppreference by to měl být int i v C++
18:11 xstill ale nechová se to tak
18:13 xstill ono je to divný
18:14 xstill ono totiž auto z = std::make_shared< int >( 1 ); 37     auto bla = static_cast< int >( z );
18:14 xstill funguje
18:14 xstill ale int blabla = z (očekávatelně) nefunguje
18:18 xstill ono to ale asi smysl dává, protože ten cast operátor je explicit
18:18 xstill a v podmínce je tuším implicitně explicitní cast :-D
18:23 xstill takže jsem tam dal static_cast< int >
18:24 xstill zvláštní že static_cast
18:24 xstill "odemkne" i explicitní casty na typ který je implicitně konvertovatený na to něco
18:28 xstill můj /nix se začíná plnit
18:58 spito joined #divine
19:29 spito left #divine
19:29 spito joined #divine
19:30 spito left #divine
19:33 xstill joined #divine
19:59 xstill joined #divine
20:17 mornfall xstill: Myslíš že by bylo realistický používat nějaký rozhraní ala bitstream v ntree?
20:19 mornfall Resp. kdyby se nějak vymyslelo zero-copy bitstream pro Blob tak by to skoro mohlo stačit.
20:19 mornfall (Ve smyslu jak z T dostat Blob nějak univerzálně...)
20:20 mornfall Případně by šlo udělat serializaci do Blobu která je nad Blob-em noop a jinak použije bitstream?
20:21 mornfall Hm, až na to že ono to navíc operuje se slackem. Achjo. :-)
20:50 mornfall divine/toolkit/hashset.h            |  314 +++++++++-------
20:50 mornfall divine/toolkit/ntreehashset.h       |  275 +++++++-------
20:50 mornfall divine/toolkit/sharedhashset.h      |  688 +++++++++++++-----------------------
20:50 mornfall to bude patch... jestli to někdy ještě dokážu přeložit, teda...

| Channels | #divine index | Today | | Search | Google Search | Plain-Text | summary