Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
G
GLib
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 936
    • Issues 936
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 59
    • Merge Requests 59
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • GNOME
  • GLib
  • Issues
  • #1487

Closed
Open
Opened Aug 09, 2018 by pdknsk@pdknskContributor

meson option to disable building tests

It accelerates building, but that's not the reason for this request. I noticed this in the build logs.

Step #12: [776/955] Generating plugin-resources.c with a custom command.
Step #12: ../../src/glib/glib/ghash.c:1956:18: runtime error: unsigned integer overflow: 2398035776 + 2088204538 cannot be represented in type 'unsigned int'
Step #12: ../../src/glib/gio/gvdb/gvdb-builder.c:94:29: runtime error: unsigned integer overflow: 193432043 * 33 cannot be represented in type 'unsigned int'
Step #12: ../../src/glib/glib/gvarianttypeinfo.c:513:21: runtime error: negation of 4 cannot be represented in type 'gsize' (aka 'unsigned long')
Step #12: ../../src/glib/glib/gvarianttypeinfo.c:583:10: runtime error: unsigned integer overflow: 18446744073709551615 + 1 cannot be represented in type 'gsize' (aka 'unsigned long')
Step #12: ../../src/glib/gio/gvdb/gvdb-builder.c:237:18: runtime error: negation of 24 cannot be represented in type 'guint64' (aka 'unsigned long')
Step #12: ../../src/glib/glib/gvariant-serialiser.c:960:18: runtime error: negation of 4 cannot be represented in type 'gsize' (aka 'unsigned long')
Step #12: ../../src/glib/glib/gvariant-serialiser.c:973:59: runtime error: unsigned integer overflow: 18446744073709551615 + 1 cannot be represented in type 'unsigned long'
Step #12: ../../src/glib/gio/gvdb/gvdb-builder.c:209:25: runtime error: negation of 1 cannot be represented in type 'unsigned int'

The custom command is glib_compile_resources. The problem for oss-fuzz is that binary running instrumented. In this case UBSAN prints (but does not exit on) often harmless unsigned-integer-overflow occurrences. (It was only enabled yesterday, so wasn't in previous logs.)

If this were a problem that caused any of the sanitizers to exit, it could not be intercepted, and so the build would presumably just fail. Preferably no built binaries should run during the build phase.

Edited Aug 09, 2018 by pdknsk
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: GNOME/glib#1487