Bylo spuštěno hlasování o přednáškách a workshopech pro letošní Installfest, jenž proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13.
Byla vydána (Mastodon, 𝕏) třetí RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.
Apple představil iPhone 17e a iPad Air s čipem M4.
Byla vydána verze 1.0 editoru kódů Gram. Jedná se o fork editoru Zed bez telemetrie a umělé inteligence.
Byla oznámena spolupráce GrapheneOS s Motorolou. Podrobnosti v tiskové zprávě. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.
Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 26.2.1. Přehled novinek v Changelogu.
Volí se dvě místa v Radě openSUSE. Seznamte se se čtyřmi kandidáty. Členové projektu openSUSE mohou hlasovat od 1. do 8. března. Výsledky budou oznámeny 9. března.
Společnost OpenAI uzavřela dohodu s americkým ministerstvem obrany o poskytování technologií umělé inteligence (AI) pro utajované sítě americké armády. Firma to oznámila několik hodin poté, co prezident Donald Trump nařídil vládě, aby přestala využívat služby společnosti Anthropic.
Technologická společnost Anthropic v noci na dnešek oznámila, že se obrátí na soud kvůli rozhodnutí ministerstva obrany označit ji za bezpečnostní riziko dodavatelského řetězce poté, co nevyhověla jeho požadavkům týkajícím se používání umělé inteligence (AI). Prezident Donald Trump krátce před tím uvedl, že nařídil federálním úřadům postupně ukončit využívání jejích AI technologií. Spor mezi firmou vyvíjející chatbot Claude a
… více »Zemřel Rob Grant, spolutvůrce kultovního sci-fi seriálu Červený trpaslík.
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: