← Back to team overview

touch-packages team mailing list archive

[Bug 1433586] [NEW] size_t in public API is a no-no

 

Public bug reported:

I missed this when reviewing the branch because, of course, the bloody
symbol mangling turns size_t into unsigned int or unsigned long.

We can't have size_t in the public API. That's not negotiable. size_t is
an implementation-defined type that can differ across architectures. The
correct fix is not to add arch-specific entries to the symbols file, but
to not use size_t in the first place. (size_t is being abused here
anyway because it doesn't express the concept of "non-negative".)

For a very cogent and detailed explanation, see John Lakos, "Large-Scale
C++ Software Design".

** Affects: unity-scopes-shell (Ubuntu)
     Importance: High
         Status: New

** Changed in: unity-scopes-shell (Ubuntu)
   Importance: Undecided => High

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to unity-scopes-shell in
Ubuntu.
https://bugs.launchpad.net/bugs/1433586

Title:
  size_t in public API is a no-no

Status in unity-scopes-shell package in Ubuntu:
  New

Bug description:
  I missed this when reviewing the branch because, of course, the bloody
  symbol mangling turns size_t into unsigned int or unsigned long.

  We can't have size_t in the public API. That's not negotiable. size_t
  is an implementation-defined type that can differ across
  architectures. The correct fix is not to add arch-specific entries to
  the symbols file, but to not use size_t in the first place. (size_t is
  being abused here anyway because it doesn't express the concept of
  "non-negative".)

  For a very cogent and detailed explanation, see John Lakos, "Large-
  Scale C++ Software Design".

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/unity-scopes-shell/+bug/1433586/+subscriptions


Follow ups

References