#409 closed enhancement (fixed)

Replace {rtems_][un]signed[8||16|32|64] by c99 stdint.h types

Reported by: Ralf Corsepius Owned by: Joel Sherrill
Priority: lowest Milestone: 4.8
Component: score Version: 4.7
Severity: minor Keywords:
Cc: bugs@…, ralf.corsepius@… Blocked By:


I would like to eliminate RTEMS types
in favor of C99-stdint.h-types,
ie. to replace them by

To getting started, I am proposing the patch in the attachment.

The patch uses the [un]signed[8|16|32|64] types
from cpukit/score/cpu/<cpu>/rtems/score/types.h to set up their C99 counterparts, ie. makes the C99-types available to the source-tree and to external applications.

At a later point in time, all occurences (except those in rtems/score/types.h) of [rtems_][un]|signed[8|16|32|64]
inside of the source tree can be replaced by the C99 types, i.e. RTEMS's API then would use C99-types instead of proprietary types.

In addition to that, this also allows us to clean up further fixed-size type systems within the source.

For the 4.6 branch, I am proposing the patch from the attachment, which generally opens opportunities to using C99 types, but doesn't actually apply them.

For the trunk, I am additionally proposing to eliminate the rtems types. This will result into large changes on the sources (and optical API-changes), but otherwise is pretty harmless, because the ABI doesn't change and the actual types the typedefs expand also into don't change.

May-be this step is too radical for you, but ... RTEMS types need to be cleaned up, IMHO.


Attachments (1)

rtems-c99-20030523.diff (3.8 KB) - added by Ralf Corsepius on Dec 3, 2006 at 1:31:13 PM.

Download all attachments as: .zip

Change History (3)

comment:1 Changed on Mar 8, 2006 at 3:06:55 PM by Joel Sherrill

Status: assignedwaiting

Changed on Dec 3, 2006 at 1:31:13 PM by Ralf Corsepius

Attachment: rtems-c99-20030523.diff added


comment:2 Changed on Dec 13, 2006 at 11:27:07 AM by Ralf Corsepius

Milestone: 4.8
rep_platform: All
Resolution: fixed
Status: assignedclosed

Obsolete - Partially implemented in rtems-4.7, fully implemented in rtems-4.8

Note: See TracTickets for help on using tickets.