Opened 13 years ago

Last modified 2 years ago

#4929 assigned enhancement

Rename dprintf() to Avoid Clash with the POSIX.1-2008 Function

Reported by: bonefish Owned by: nobody
Priority: normal Milestone: R1.1
Component: System/Kernel Version: R1/alpha1
Keywords: Cc:
Blocked By: Blocking: #15366
Platform: All


POSIX.1-2008 introduces the functions [v]dprintf(). To avoid a name clash when we implement them, the kernel dprintf() should be renamed to debug_printf(). We can continue provide the old symbol for binary compatibility.

Change History (10)

comment:1 by waddlesplash, 7 years ago

Milestone: R1Unscheduled

comment:2 by waddlesplash, 7 years ago

Milestone: UnscheduledR1

Reverting earlier milestone change

comment:3 by axeld, 6 years ago

Owner: changed from axeld to nobody
Status: newassigned

comment:4 by waddlesplash, 4 years ago

Why rename it to "debug_printf" instead of just "printf", anyway?

comment:5 by waddlesplash, 3 years ago

Blocking: 15366 added

comment:6 by X512, 2 years ago

Is it really needed? Kernel is not expected to provide full POSIX support.

comment:7 by waddlesplash, 2 years ago

The problem also applies to libroot.

in reply to:  7 comment:8 by mmlr, 2 years ago

Replying to waddlesplash:

The problem also applies to libroot.

No, in userland it is already called debug_printf and libroot exports the other dprintf(fd, format, ...) from stdio.

Last edited 2 years ago by mmlr (previous) (diff)

comment:9 by pulkomandy, 2 years ago

It's not a "needed" change, but just to avoid confusion by having two different functions in two different places doing different things.

The kernel is of course not implementing the full POSIX API, but we at least try to keep it as close as reasonably possible as it makes development a lot easier and removes a lot of "oh no I'm writing kernel code, I need magic incantations" feeling by having a subset of the same APIs available.

Last edited 2 years ago by pulkomandy (previous) (diff)

comment:10 by pulkomandy, 2 years ago

Milestone: R1R1.1
Note: See TracTickets for help on using tickets.