Click here to Skip to main content
15,887,214 members

The Insider News

   

The Insider News is for breaking IT and Software development news. Post your news, your alerts and your inside scoops. This is an IT news-only forum - all off-topic, non-news posts will be removed. If you wish to ask a programming question please post it here.

Get The Daily Insider direct to your mailbox every day. Subscribe now!

 
GeneralRe: A 2024 discussion whether to convert the Linux kernel from C to modern C++ Pin
obermd15-Jan-24 5:26
obermd15-Jan-24 5:26 
GeneralRe: A 2024 discussion whether to convert the Linux kernel from C to modern C++ Pin
David O'Neil15-Jan-24 8:48
professionalDavid O'Neil15-Jan-24 8:48 
GeneralRe: A 2024 discussion whether to convert the Linux kernel from C to modern C++ Pin
obermd15-Jan-24 10:56
obermd15-Jan-24 10:56 
GeneralRe: A 2024 discussion whether to convert the Linux kernel from C to modern C++ Pin
David O'Neil15-Jan-24 11:14
professionalDavid O'Neil15-Jan-24 11:14 
GeneralRe: A 2024 discussion whether to convert the Linux kernel from C to modern C++ Pin
obermd15-Jan-24 12:23
obermd15-Jan-24 12:23 
GeneralRe: A 2024 discussion whether to convert the Linux kernel from C to modern C++ Pin
David O'Neil15-Jan-24 12:42
professionalDavid O'Neil15-Jan-24 12:42 
GeneralRe: A 2024 discussion whether to convert the Linux kernel from C to modern C++ Pin
Rob Grainger16-Jan-24 13:26
Rob Grainger16-Jan-24 13:26 
GeneralRe: A 2024 discussion whether to convert the Linux kernel from C to modern C++ Pin
trønderen15-Jan-24 13:04
trønderen15-Jan-24 13:04 
A full flow analysis, as part of a static code analyzer, can do a lot to remove the need for checks, so that the compiler could suppress e.g. length / index / null checking when the flow analysis showed that the index / pointer could not possibly be outside the object or a null pointer. If the compiler did such complete flow analysis, that is. Usually, they don't.

I have been using static analyzers telling me things like "In module A, x is set to 20, and used in a call to module B function f as argument y. f uses y without modification to a call to function g in module C, as argument z. g uses z to index string s, but s is declared with length 16, so this would cause a runtime error".

The trace will often contain conditions, like "at function f, line 211, the local variable a may be set to a negative value, in which case the if-test at line 342 will take the false branch, causing function C.g to be called with z argument set to 20" or something like that.

The flow analyzer traces every call to g back to where whatever ends up as argument z. If every possible path that leads up to z indexing s goes back to some origin that always will be within legal limits, then there is no need for check instructions.

A trivial example: If the string index is a loop control variable with constant bounds within the string's index limits, and there is no other indexing of the string within this loop, check instructions are superfluous.

Religious freedom is the freedom to say that two plus two make five.

GeneralRe: A 2024 discussion whether to convert the Linux kernel from C to modern C++ Pin
David O'Neil15-Jan-24 13:39
professionalDavid O'Neil15-Jan-24 13:39 
GeneralRe: A 2024 discussion whether to convert the Linux kernel from C to modern C++ Pin
den2k8815-Jan-24 23:07
professionalden2k8815-Jan-24 23:07 
News50 years later: Remembering how the future looked in 1974 Pin
Kent Sharkey14-Jan-24 10:46
staffKent Sharkey14-Jan-24 10:46 
GeneralRe: 50 years later: Remembering how the future looked in 1974 Pin
obermd15-Jan-24 5:27
obermd15-Jan-24 5:27 
NewsWhy most engineers aren't 10x engineers Pin
Kent Sharkey14-Jan-24 10:31
staffKent Sharkey14-Jan-24 10:31 
GeneralRe: Why most engineers aren't 10x engineers Pin
Daniel Pfeffer14-Jan-24 20:12
professionalDaniel Pfeffer14-Jan-24 20:12 
GeneralRe: Why most engineers aren't 10x engineers Pin
Kent Sharkey15-Jan-24 4:13
staffKent Sharkey15-Jan-24 4:13 
GeneralRe: Why most engineers aren't 10x engineers Pin
den2k8814-Jan-24 23:50
professionalden2k8814-Jan-24 23:50 
GeneralRe: Why most engineers aren't 10x engineers Pin
Daniel Pfeffer15-Jan-24 5:05
professionalDaniel Pfeffer15-Jan-24 5:05 
GeneralRe: Why most engineers aren't 10x engineers Pin
obermd16-Jan-24 4:17
obermd16-Jan-24 4:17 
GeneralRe: Why most engineers aren't 10x engineers Pin
Daniel Pfeffer16-Jan-24 12:28
professionalDaniel Pfeffer16-Jan-24 12:28 
NewsMicrosoft touts Security Copilot for emerging threats Pin
Kent Sharkey14-Jan-24 10:31
staffKent Sharkey14-Jan-24 10:31 
NewsThe Peregrine lunar lander didn’t land, but it’s still collecting data Pin
Kent Sharkey14-Jan-24 10:31
staffKent Sharkey14-Jan-24 10:31 
GeneralRe: The Peregrine lunar lander didn’t land, but it’s still collecting data Pin
Nelek15-Jan-24 8:38
protectorNelek15-Jan-24 8:38 
NewsMicrosoft wants to automatically launch its Copilot AI on some Windows 11 devices Pin
Kent Sharkey14-Jan-24 10:16
staffKent Sharkey14-Jan-24 10:16 
GeneralRe: Microsoft wants to automatically launch its Copilot AI on some Windows 11 devices Pin
Nelek15-Jan-24 8:38
protectorNelek15-Jan-24 8:38 
NewsMany software developers don’t trust AI – report Pin
Kent Sharkey14-Jan-24 10:16
staffKent Sharkey14-Jan-24 10:16 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.