AROS inconsistent type declarations

magorium · 593

magorium

  • Legendary Member
  • *****
    • Posts: 632
    • Karma: +62/-0
  • Convicted non contributor
on: May 20, 2022, 06:39:46 PM
I encountered the following:

Exec:
Function Debug, parameter flags, type:
AROS: unsigned long (since 1996 according to github)
RKRM: ULONG

MUI:
Function AllocAslRequest, parameter reqtype, type:
AROS: unsigned long
AUTODOC: ULONG (https://github.com/amiga-mui/muidev/blob/master/files/muimaster.txt#L102)

Icon:
Function AddFreeList, parameter size, type:
AROS: unsigned long (since 1997 according to github)
RKRM: ULONG

As far as i am able to tell these are the only exceptions that uses standard c-types instead of one of the AROS/Amiga crafted types.

Are the "unsigned long" types as currently used in the posted examples intended or should the use of these types for system API functions be considered a bug ?


deadwood

  • AROS Developer
  • Legendary Member
  • *****
    • Posts: 1524
    • Karma: +118/-0
Reply #1 on: May 20, 2022, 11:58:59 PM
At this point I consider this a bug. It has not impact on 32-bit targets as sizeof(long) = sizeof(ULONG), but that's not the case for 64-bit targets.

I created a bug report here. I will look at it next time I'm working on ABIv11 or AxRuntime.



magorium

  • Legendary Member
  • *****
    • Posts: 632
    • Karma: +62/-0
  • Convicted non contributor