Opened 3 years ago

Closed 3 years ago

#17084 closed enhancement (invalid)

GCC 8.3.0: int128_t check size failure

Reported by: cocobean Owned by: nobody
Priority: low Milestone: Unscheduled
Component: System/POSIX Version: R1/Development
Keywords: posix Cc:
Blocked By: Blocking:
Platform: All

Description

Tested on hrev55181+38 x86_gcc2 using gcc (2019_05_24) 8.3.0 w/ WebKit 612.1.24:

-- Check size of __int128_t - failed

Change History (5)

comment:1 by cocobean, 3 years ago

Ref: https://raw.githubusercontent.com/haiku/haiku/master/headers/cpp/limits

// Note: this is not a conforming implementation.
// Written by Gabriel Dos Reis ...

//
// ISO 14882:1998
// 18.2.1
//
....
#if !defined(__STRICT_ANSI__) && defined(_GLIBCXX_USE_INT128)
  /// numeric_limits<__int128> specialization.
  template<>
    struct numeric_limits<__int128>
    {
      static const bool is_specialized = true;

      static const __int128
      min() { return __glibcxx_min (__int128); }

      static const __int128
      max() { return __glibcxx_max (__int128); }

#if __cplusplus >= 201103L
      static constexpr __int128
      lowest() noexcept { return min(); }
#endif

Ref: https://stackoverflow.com/questions/29638723/why-isnt-there-int128-t

N1570 draft of the C standard:

    These types are optional. However, if an implementation provides integer types with widths of 8, 16, 32, or 64 bits, no padding bits, and (for the signed types) that have a two’s complement representation, it shall define the corresponding typedef names.
Last edited 3 years ago by cocobean (previous) (diff)

comment:2 by cocobean, 3 years ago

Confirmed working on Haiku hrev55181+38 x86_64 using gcc (2019_05_24) 8.3.0 w/ WebKit 612.1.24:

-- Check size of __int128_t - done (i.e. PASSED)

comment:3 by pulkomandy, 3 years ago

What is the problem here? This type is not supported on 32bit systems by gcc. That's normal and expected.

You say it yourself:

These types are optional

comment:4 by cocobean, 3 years ago

Please close this ticket.

comment:5 by pulkomandy, 3 years ago

Resolution: invalid
Status: newclosed
Note: See TracTickets for help on using tickets.