On Sat, Dec 28, 2013 at 09:57:06PM +0000, ponce wrote: [...] > >I noticed that in Deimos and Derelict that most(if not all) C > >function declarations are marked as nothrow. What are the > >speed/safety benefits of including this? > > No speed or safety benefit, but it allows to call these C functions > in functions marked nothrow themselves. As a rule of thumb you can > put nothrow systematically when binding C code. [...]
Yes, since C code will not throw D exceptions (C doesn't know anything about D exceptions). Unless you pass in a function pointer to a D function that does throw an exception... but that case doesn't work for other reasons, so it generally shouldn't be done. So, barring that, all C code is automatically nothrow. T -- What do you call optometrist jokes? Vitreous humor.