Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
  • Sign in / Register
  • LilyPond LilyPond
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 1,018
    • Issues 1,018
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 24
    • Merge requests 24
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • LilyPond
  • LilyPondLilyPond
  • Merge requests
  • !984

Clean up SCM/C++ integer conversions

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Dan Eble requested to merge dev/eble/int-conversions into master Oct 31, 2021
  • Overview 7
  • Commits 1
  • Pipelines 4
  • Changes 3

Specialize is_scm, from_scm, and to_scm for the 8 fundamental integer types: {signed, unsigned} ⨯ {short, int, long, long long}.

Remove the specializations for size_t because it is a typedef.

Because the is_scm functions perform range checks, state the range when one fails in LY_ASSERT_TYPE calls. This avoids insults like

Wrong type argument in position 1 (expecting integer): 9999999999

Add a predicate for ly:wide-char->utf-8 and remove some C-style casts.

Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: dev/eble/int-conversions