Super-Assert()
The Ultimate Upgrade for the C Standard Library's assertions
As a software developer or game developer, you're no stranger to the challenges of debugging complex applications. Enter Super-Assert, an innovative upgrade to the C standard library's trusty assert()
function, designed with the modern developer in mind. Super-Assert isn't just about catching bugs–it's about empowering you to handle them more efficiently, reducing interruptions, and making your debugging workflow smoother than ever.
Why Super-Assert?
The standard assert()
function has been a core tool in the C developer's toolkit for years, but as applications have grown in complexity, its limitations have become more apparent. Super-Assert takes everything great about assert()
and builds upon it with new features that simplify debugging, minimize friction, and enhance productivity for developers–whether you're building a command-line tool or a sophisticated game engine.
Here's what Super-Assert brings to the table:
1. Redesigned Developer-Friendly Dialog
Super-Assert introduces an intuitive developer-first assertion dialog that's engineered for speed and ease of use. The interface features:
-
Keyboard navigation and shortcuts: Easily handle assertions with single-key shortcuts like:
- A for Abort
- R for Retry
- I for Ignore
- N for Ignore All
-
This allows for lightning-fast interaction, keeping your focus on coding, not on fiddling with the mouse.
-
Larger buttons with familiar icons: Inspired by traffic signs, Super-Assert's buttons are more than just bigger–they're recognizable at a glance, mo more fumbling or clicking the wrong option in a hurry.
2. Pixel-Perfect DPI Scaling
Working across different screen setups, including high-DPI monitors? Super-Assert has you covered. With flawless DPI scaling, including crisp, well-designed sprites, Super-Assert's dialog looks sharp and functions seamlessly on any display configuration. Whether you're developing on a 4K monitor or traditional setup, Super-Assert scales perfectly without any visual glitches or blurry text.
3. Break at Assertion Location
One of the most frustrating issues with some compilers' assertion handlers is when pressing Retry drops you into a runtime library function, requiring you to dig through the call stack to locate the real problem in your code. With Super Assert, that's a thing of the past.
When you press Retry, Super Assert always breaks into the debugger at the exact line where the assertion failed–for both GUI and console applications. No more stepping through C runtime functions or scrolling up the stack trace to find the offending line of code. This precision saves time by letting you zero in on bugs right away.
4. Loop Friendly with Ignore All
Dealing with assertions in application or game main loops can be a headache. Standard assert()
functions can leave you stuck in endless assertion pop-ups when issues arise in frequently called functions. Super Assert offers a smarter solution with the "Ignore All" button.
Clicking "Ignore All" suppresses the specific assertion for the rest of the debugging session, allowing you to focus on fixing other issues without constant interruptions. Crucially, it also ensures that the assertion's parameters are still evaluated–just in case they contain side-effects that might affect other areas of your code.
5. Minimally Invasive
Unlike some compilers' assertion hanlders that load external modules like User32's MessageBox
function, Super Assert does not load any new DLLs or modules into the process that triggered the assertion. This lightweight, non-intrusive design makes Super Assert ideal for both GUI and command-line applications, ensuring minimal interference with your address space during debugging. Finally Assert.exe does not depend on any C-Runtime Library.
A Smarter Way to Debug
Super-Assert is more than just a debugging tool–it's a productivity booster for developers who demand precision, speed, and efficiency. With intuitive keyboard shortcuts, a developer-first UI, performance-optimized design, and a powerful "Ignore All" feature, Super-Assert makes writing assertions fun again.
Download Visual Studio Project: [AssertSample.zip].
Download Standalone Assertion Dialog: [Assert.zip].
Free for personal, non-commercial use. Contact for enterprise licensing.