Skip to content

Build Fails: "Use of undeclared identifier 'nullptr'" #56

@userFortyTwo

Description

@userFortyTwo

Building an app with the geopackage-ios pod added to it fails on my M2 Mac (running macOS 14.4.1).

Version Information:

  • GeoPackage iOS Version: 8.0.6
  • GeoPackage iOS Source: CocoaPods
  • CocoaPods Version: 1.15.2
  • Xcode Version: 15.3 (15E204a)
  • Device or Emulator: iPhone 15 Pro simulator
  • iOS Version: iOS 17.4 (21E213)
  • Other Relevant Libraries: none

Expected Results:

The build should succeed, and the app should launch in the simulator.

Observed Results:

The build fails.

Output:

sf-proj-ios

Steps to Reproduce:

  1. Create a new Xcode project for an iOS app.
  2. Run pod init.
  3. Add pod geopackage-ios, '~> 8.0.6' to the Podfile.
  4. Run pod install.
  5. Open the newly created Xcode workspace and hit Run.

Relevant Code:

none

Test Files:

none

Additional Information:

The C++ Language Dialect is set to the default GNU++20 option in the build settings and thus should support the nullptr literal.

Manually defining the nullptr keyword inside the optargpm.h file (#define nullptr 0x0) resolves the problem, but leads to further compilation issues. In this case, an error message is received, saying the memory file included at Pods/PROJ/filemanager.hpp:31 could not be found. Commenting out this include-directive, the compiler will complain about the string file missing, which is included in the next line.

These issues might result from the fact that the C++ headers may be interpreted as C code. (Editing the headers to emit #error C code on #ifndef __cplusplus appears to confirm this assumption.)

Is this a bug? Is anyone else experiencing these problems, or does anyone know how to solve them?

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions