Vývojáři svobodného 3D softwaru Blender představili (𝕏, Mastodon, Bluesky) nejnovějšího firemního sponzora Blenderu. Je ním společnost Anthropic stojící za AI Claude a úroveň sponzoringu je Patron, tj. minimálně 240 tisíc eur ročně. Anthropic oznámil sponzorství v tiskové zprávě Claude for Creative Work.
VNC server wayvnc pro Wayland kompozitory postavené nad wlroots - ne GNOME, KDE nebo Weston - byl vydán ve verzi 0.10.0. Vydána byla také verze 1.0.0 související knihovny neatvnc.
Bylo oznámeno vydání Fedora Linuxu 44. Ve finální verzi vychází šest oficiálních edic: Fedora Workstation a Fedora KDE Plasma Desktop pro desktopové, Fedora Server pro serverové, Fedora IoT pro internet věcí, Fedora Cloud pro cloudové nasazení a Fedora CoreOS pro ty, kteří preferují neměnné systémy. Vedle nich jsou k dispozici také další atomické desktopy, spiny a laby. Podrobný přehled novinek v samostatných článcích na stránkách
… více »David Malcolm se na blogu vývojářů Red Hatu rozepsal o vybraných novinkách v GCC 16, jež by mělo vyjít v nejbližších dnech. Vypíchnuta jsou vylepšení čitelnosti chybových zpráv v C++, aktualizovaný SARIF (Static Analysis Results Interchange Format) výstup a nová volba experimental-html v HTML výstupu.
Byla vydána verze R14.1.6 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.
Jon Seager z Canonicalu včera na Ubuntu Community Hubu popsal budoucnost AI v Ubuntu. Dnes upřesnil: AI nástroje budou k dispozici jako Snap balíčky, vždy je může uživatel odinstalovat. Ve výchozím nastavení budou všechny AI nástroje používat lokální AI modely.
Nový ovladač Steam Controller jde do prodeje 4. května. Cena je 99 eur.
Greg Kroah-Hartman začal používat AI asistenta pojmenovaného gkh_clanker_t1000. V commitech se objevuje "Assisted-by: gkh_clanker_t1000". Na social.kernel.org publikoval jeho fotografii. Jedná se o Framework Desktop s AMD Ryzen AI Max a lokální LLM.
Ubuntu 26.10 bude Stonking Stingray (úžasný rejnok).
Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.3.0. S experimentální podporou FLTK 1.4. S příkazem dilloc pro ovládání prohlížeče z příkazové řádky. Vývoj prohlížeče se přesunul z GitHubu na vlastní doménu dillo-browser.org (Git).
catch(...) blok. Zajímalo by mě ale, jestli jde nějak kompilátoru (GCC) říct, aby zavolal nějakou funkci či skočil na návěští, když callback vyhodí výjimku. Prostě jen tak ze zvědavosti. Zahrávám si s myšlenkou v blízké budoucnosti vytvořit překladač nespecifikovaného jazyka do C a chtěl bych tam mít i výjimky, aniž bych použil C++, ale chtěl bych, aby to volalo i C++ destruktory a dalo se to chytit v catch(...) bloku, zavolá-li mou funkci někdo z C++.
// throwing_code.c
#include <stdint.h>
#include <stdio.h>
typedef enum {
_URC_NO_REASON = 0,
_URC_FOREIGN_EXCEPTION_CAUGHT = 1,
_URC_FATAL_PHASE2_ERROR = 2,
_URC_FATAL_PHASE1_ERROR = 3,
_URC_NORMAL_STOP = 4,
_URC_END_OF_STACK = 5,
_URC_HANDLER_FOUND = 6,
_URC_INSTALL_CONTEXT = 7,
_URC_CONTINUE_UNWIND = 8
} _Unwind_Reason_Code;
typedef struct _Unwind_Exception _Unwind_Exception;
typedef void (*_Unwind_Exception_Cleanup_Fn)
(_Unwind_Reason_Code reason, _Unwind_Exception *exc);
struct _Unwind_Exception {
uint64_t exception_class;
_Unwind_Exception_Cleanup_Fn exception_cleanup;
uint64_t private_1;
uint64_t private_2;
};
extern _Unwind_Reason_Code
_Unwind_RaiseException(_Unwind_Exception *e);
void exception_cleanup(_Unwind_Reason_Code reason, _Unwind_Exception *e)
{
printf("Exception cleanup, reason = %i, e = %p\n", (int)reason, (void*)e);
}
_Unwind_Exception e = {
((uint64_t)('J') << 56) | ((uint64_t)('A') << 48) | ((uint64_t)('R') << 40) |
((uint64_t)('D') << 32) | ((uint64_t)('I') << 24) | ((uint64_t)('K') << 16) |
((uint64_t)('\0') << 8) | ((uint64_t)('\0') << 0),
exception_cleanup,
0,
0
};
void throwing_code_throw()
{
_Unwind_RaiseException(&e);
}
// catching_code.cpp
#include <cstdio>
extern "C" void throwing_code_throw();
int main(int argc, char **argv)
{
try {
throwing_code_throw();
printf("after exception\n");
}
catch (...) {
printf("caught exception\n");
}
return 0;
}
Zrovna na toto tema se nedavno vedla diskuze u jazyka D. A pokud vim tak se uz i nekam pokrocilo a v blizko dobe bude mozne v D chytat vyjimky z C++. Takze mozna se poptat nekoho z fora D.
nejaka prace uz je i zaclenena ale nevim zda ti to bude uzitecne
https://github.com/D-Programming-Language/dmd/pulls?utf8=✓&q=is%3Apr+author%3AWalterBright+
std::set_unexpected a std::set_terminate? Viz http://stackoverflow.com/questions/4448677/can-a-c-program-handle-c-exceptions.
Tiskni
Sdílej: