Time: 0:00
Test a custom input to verify an edge case (e.g. empty lists, negative numbers, duplicates).
This bug belongs to the null and undefined errors pattern
Cannot read properties of undefined, NoneType has no attribute, NaN appearing from nowhere.
What went wrong: The comparison of a nil pointer to nil through an interface{} type always returns false because the interface{} type does not have a nil value. Instead, it holds a typed nil pointer.
The fix: Use a type assertion to correctly check if the interface holds a nil pointer.
Remember: When dealing with interfaces in Go, be cautious of nil checks as they behave differently than direct nil checks on pointers.
The pattern behind it: null and undefined errors.
Paste this into any web page or blog post. Visitors fix the bug right there, in their browser.
<iframe src="https://trybughunt.com/embed/e5201ce4-d3aa-464f-ae39-31f7fed3075c" title="Debugging challenge: Unexpected behavior with nil interface comparison" width="100%" height="580" loading="lazy" style="border:1px solid #d4d4d8;border-radius:12px;max-width:760px"></iframe>
<p style="font-size:14px">Debugging challenge from <a href="https://trybughunt.com/challenges/e5201ce4-d3aa-464f-ae39-31f7fed3075c">TryBugHunt</a></p>