~ / topics / Operating Systems
$man os-macos-and-ios

macOS and iOS

In brief: Current Macs, iPhones and iPads run only 64-bit software, and 64-bit Apple software uses 64-bit time, so supported Apple devices are not at risk from 2038 itself. The risk lies with old hardware and data: 32-bit Macs and the last 32-bit iPhones and iPads (around 2012–2013), and the classic Mac date format and HFS+ disks, whose dates end in February 2040, not in 2038.

Risk level Low (current macOS/iOS) · Medium (HFS+ volumes, classic Mac data formats, 32-bit legacy devices)
Status 64-bit-only since macOS 10.15 (2019) and iOS 11 (2017). HFS+ and classic Mac dates limited to 2040-02-06
Last reviewed 2026-10-21

2038 status at a glance

Not affected or different deadline (2), and why
  • Not affectediOS 11 and later64-bit only since iOS 11. 32-bit apps no longer launch.
  • Not affectedmacOS 10.15 and laterCatalina and later run only 64-bit apps, so time_t is 64-bit throughout.

Overview

Apple platforms have three different time representations with different limits:

Representation Epoch Width Limit
Darwin/BSD time_t (Unix layer) 1970-01-01 UTC 32-bit long on 32-bit (ILP32) builds, 64-bit on LP64 2038-01-19 (32-bit only)
Classic Mac OS "seconds since 1904" (GetDateTime, DateTimeRec) 1904-01-01, local time Unsigned 32-bit 2040-02-06 06:28:15
HFS+ on-disk dates 1904-01-01, GMT Unsigned 32-bit 2040-02-06 06:28:15 GMT
APFS on-disk timestamps 1970-01-01 UTC 64-bit nanoseconds Centuries ahead
Foundation NSDate/Date (Cocoa) 2001-01-01 64-bit double Not an issue

Because the 32-bit Darwin time_t was signed, the 2038 problem applied to 32-bit Mac OS X processes. The classic Mac and HFS+ counters are unsigned and start in 1904, so they reach their limit about two years later, in 2040.

Technical details

Darwin time_t and the 64-bit transition

iOS

Classic Mac OS: 1904 to 2040

Apple's Inside Macintosh describes date-time information "expressed, using 4 bytes, as the number of seconds elapsed since midnight, January 1, 1904". After the value reaches $FFFFFFFF "it resets to 0. Therefore, the date-time record can track dates and times only between midnight on January 1, 1904 and 6:28:15 A.M. on February 6, 2040." Apple recommended the 64-bit long date-time record (LongDateRec, about 30,000 BC to 30,000 AD) for wider ranges [8]. The 1904 epoch also survives in some file formats, for example QuickTime/MP4 header creation and modification times (unverified here; check the format specification). See File-Formats-and-Protocols.

HFS+ (Mac OS Extended): 2040

Apple Technical Note TN1150: HFS Plus dates "are stored in unsigned 32-bit integers (UInt32) containing the number of seconds since midnight, January 1, 1904, GMT … The maximum representable date is February 6, 2040 at 06:28:15 GMT." [9] HFS (the original format) stores local time instead. HFS+ is still found on external drives and disk images formatted "Mac OS Extended". A file dated beyond 2040 cannot be represented on HFS+. Linux's hfs/hfsplus drivers adopted Apple's documented 1904–2040 range in 2018 [10].

APFS

APFS, Apple's current default file system, stores timestamps as a 64-bit count of nanoseconds since 1970-01-01 UTC [11]. This covers several centuries in both directions and is not 2038- or 2040-limited. Third-party sources disagree on whether the field is signed [11].

Affected versions / products

Platform 2038 status
macOS 10.15+ on any Mac Safe (64-bit only) [3]
macOS ≤ 10.14 running 32-bit apps 32-bit apps affected
Mac OS X 10.4–10.6 with 32-bit kernel (PowerPC, early Intel) Affected (kernel and apps) [2]
iOS 11+ Safe (64-bit only) [5]
iOS ≤ 10 on 32-bit devices (iPhone 5/5c, iPad 4 and older) Affected [6][7]
HFS+ volumes (any macOS) Dates limited to 2040-02-06 [9]
Classic Mac OS (System 7 – Mac OS 9) Dates limited to 2040-02-06 [8]
APFS Safe [11]

Risk & compliance notes

Detection & mitigation

# find 32-bit Mach-O binaries (only relevant on macOS <= 10.14 or for archived software)
file /Applications/*.app/Contents/MacOS/* | grep -E 'i386|ppc'
# identify HFS+ volumes
diskutil list | grep -i 'Apple_HFS'

See also

References

  1. tz mailing list: POSIX epoch / xnu __darwin_time_t — IANA tz list, 2016-02. Quotes typedef long __darwin_time_t; from xnu-3247.1.106 (seen in search results).
  2. Classic Mac OS will survive Y2038 (and maybe longer) — 68kMLA forum. 32-bit Mac OS X kernels (10.4–10.6) use a 32-bit time_t. Forum source (seen in search results).
  3. 32-bit app compatibility with macOS — Apple Support. Catalina 10.15 dropped 32-bit apps; Mojave 10.14 was the last to run them.
  4. The future of iOS is 64-bit only: Apple to stop support of 32-bit apps — Macworld, 2017. 64-bit requirement for new apps from 2015-02-01 (seen in search results).
  5. Apple reminds developers that all Mac and iOS 11 apps must support 64-bit — Neowin, 2017. 32-bit apps will not launch on iOS 11 (seen in search results).
  6. Apple updating older iPhones and iPads to fix GPS accuracy issue — iMore, 2019-07. iOS 10.3.4 (iPhone 5, iPad 4 cellular) and 9.3.6 for older devices (seen in search results).
  7. Year 2038 problem — Wikipedia. Secondary source listing 32-bit iOS devices among vulnerable systems.
  8. Inside Macintosh: Operating System Utilities — Date-Time Records — Apple Developer (archive). 1904 epoch; range from 1904-01-01 to 6:28:15 AM on 2040-02-06; LongDateRec.
  9. Technical Note TN1150: HFS Plus Volume Format — Apple Developer (archive). "HFS Plus Dates": unsigned 32-bit since 1904 GMT, maximum 2040-02-06 06:28:15 GMT.
  10. Re: [PATCH] hfs/hfsplus: use documented official timestamp range — LKML, 2018-07. Linux drivers adopt the 1904–2040 range (seen in search results).
  11. Be careful when interpreting APFS timestamps — The Eclectic Light Company, 2025-10-24 and dfdatetime APFS time — dfdatetime docs. 64-bit nanoseconds since 1970; they disagree on signedness (seen in search results).
  12. Update your iPhone or iPad software if you're experiencing issues with location, date, and time — Apple Support (archived article). Apple's GPS-rollover advisory: affected models, iOS 10.3.4 / 9.3.6, impact just before 00:00 UTC on 2019-11-03, Mac/PC restore for iPhone 5.