Pc-lint Plus Se -
The terminal blinked. Then it began to scream.
Total errors: 1 Total warnings: 0 Bugs found that would have escaped unit test: 1 Lives potentially saved: unknown She closed the laptop. The ghosts, for now, were quiet. pc-lint plus se
for (int i = 0; i < SENSOR_HISTORY; i++) { temp_ptr = &sensor_buffer[(offset + i) % BUFSZ]; calib_ptr = &calib_table[temp_ptr->raw >> 2]; if (temp_ptr->value > 85.0) { *calib_ptr = apply_emergency_curve(temp_ptr->value); // here } } The aliasing was invisible to human eyes and to ordinary linters. But temp_ptr and calib_ptr could, under specific unrolling, point to overlapping memory if offset was maliciously crafted. The write to calib_ptr would then corrupt the next sensor’s buffer, causing a silent overflow. The terminal blinked
“That tool is terrifying,” she said. “It found something that wouldn’t have crashed for another two years of field operation.” The ghosts, for now, were quiet
“The issue isn’t the hardware,” Eleanor said, rubbing her eyes. “It’s the software. There’s a pointer dereference that only corrupts memory when the temperature sensor hits a specific threshold. I’ve run every static analyzer we own. Nothing catches it.”
Eleanor raised an eyebrow. PC-lint Plus was the legendary, grizzled veteran of static analysis—unfriendly, verbose, and merciless. But the “SE” edition—Semantic Edge—was something else. It was the analyzer that defense contractors used when lives were on the line.