Bug 128733
Summary: | Undefined types in db.h during c99 compile | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 3 | Reporter: | Need Real Name <rlee> |
Component: | db4 | Assignee: | Jeff Johnson <jbj> |
Status: | CLOSED NOTABUG | QA Contact: | |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 3.0 | CC: | rlee |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | i386 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2004-07-28 20:49:23 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Need Real Name
2004-07-28 19:52:08 UTC
The fix is to define type u_long. However, this normally is done by other system includes. There is no claim that db-4.1.25 is c99 clean that I'm aware of, particularly for your t1.c test case. There are certainly rather easy fixes including other system includes in t1.c. Here is a more thorough answer to why this is not a bug: BerkelyDB uses BSD environment typedefs (like u_long). Normally, gcc/glibc _defaults_ to including BSD environments -- UNLESS an environment/standard is specifically defined, like c99 (see /usr/include/features.h). Therefore, the fix is to define _BSD_SOURCE in C99 code -- in essence specifying that the code uses both C99 and BSD environments. |