Default assert.h on Tru64 5.1 has an include guard around the whole include in format of:
#ifndef __ASSERT_H_ #define __ASSERT_H_ ... rest of the code ... #endif /* __ASSERT_H_ */ This leads to a behavior different from the one described in the standard, where assert.h is claimed to be the only not omnipotent header file, preventing multiple inclusions and therefore techniques like: #undef NDEBUG #include <cassert> assert(something); -- Summary: fixincludes adjusts assert.h in such a way that it stays omnipotent Product: gcc Version: 3.4.4 Status: UNCONFIRMED Severity: critical Priority: P3 Component: bootstrap AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: vladimir dot lazarenko at humaninference dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34520