mksh hosts its code at .

You can learn more at the project's web page.

Launchpad imports the master branch and you can create branches from it.

You can browse the source code for the development focus branch or get a copy of the branch using the command:
bzr branch lp:mksh

mksh has 2 active branches owned by 2 people. There were 29 commits by 1 person in the last month.

Bazaar branches

Name Status Last Modified Last Commit
lp:mksh
Series: trunk
2 Mature 2021-07-28 04:07:54 UTC
3189. get the lowest negative number w/o tr...

Author: tg
Revision Date: 2021-07-28 04:07:54 UTC

get the lowest negative number w/o triggering UB, try n…

I have a feeling we’ll need this RSN:

/*
 * styp sv = (uv > 0x7FFFFFFF) ? (styp)(-(styp)(~uv & 0x7FFFFFFF) - 1) : ((styp)uv);
 * utyp uv = (sv < 0) ? ((utyp)(~(utyp)(-(sv + 1)) & 0xFFFFFFFFU)) : ((utyp)sv);
 *
 * long sl = (ul > (ulng)LONG_MAX) ? (long)(-(long)(~ul) - 1L) : ((long)ul);
 * ulng ul = (sl < 0) ? ((ulng)(~(ulng)(-(sl + 1L)))) : ((ulng)ul);
 *
 * styp sneg = (uval > 0) ? (styp)(-(styp)((uval - 1U) & 0x7FFFFFFF) - 1) : (styp)0;
 */

The first twice two are what I figured out how to convert between
internal two’s complement and ISO C’s signed integer types, once
for mksh’s 32-bit arithmetics, once for POSIX’ C long arithmetics
(both implemented, as already announced, on standard integer type
(probably just long for both checking it’s wide enough), as fixed
width types have lower conversion rank). The last negates from an
unsigned 0‥-TYPE_MIN to a signed TYPE_MIN‥0 and is what this com‐
mit introduced in actual prod code.

This rabbit hole is a bottomless barrel… I still want my Ͻ…

lp:~s1986q/mksh/mksh 1 Development 2017-07-28 10:23:04 UTC
2766. make readonly idempotent; spotted by ...

Author: tg
Revision Date: 2017-07-26 23:02:23 UTC

make readonly idempotent; spotted by selk from Dragora

12 of 2 results
You can't create new branches for mksh.