Skip to content

fix warnings about automatic conversion from size_t to uint32_t#18

Merged
vsg-dev merged 1 commit into
vsg-dev:masterfrom
LaurensVoerman:uint32_tCast
Dec 11, 2018
Merged

fix warnings about automatic conversion from size_t to uint32_t#18
vsg-dev merged 1 commit into
vsg-dev:masterfrom
LaurensVoerman:uint32_tCast

Conversation

@LaurensVoerman
Copy link
Copy Markdown
Contributor

Pull Request Template

Description

Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.

Fixes Compiler warning:
warning C4267: '=': conversion from 'size_t' to 'uint32_t', possible loss of data
added c-style casts to unint32_t - mostly for the results of vector.size() that are of type std::size_t
Most seem to be required to be uint32_t for the vulcan api, except those in
src/vsg/vk/Descriptor.cpp (width,height,depth) that describe image dimensions. Those could be defined as size_t themselves, but I guessed leaving the 32bit limit on a single dimension is still reasonable.

Trying to get things running I found a few problems on win32, and to avoid duplicate work I would like to submit my fixes for merging. As I don't have an executable build yet, nothing is tested.

Regards, Laurens.

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

  • Not tested

Test Configuration:

  • OS: Win 10 1803 x64
  • Hardware: i7 6700K / 32BG / GeForce 1080 417.22
  • Toolchain: Visual Studio Community 2017
  • SDK:

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules

@vsg-dev
Copy link
Copy Markdown
Owner

vsg-dev commented Dec 11, 2018

I think the better fix would be to use C++ style static_cast<uint32_t> rather than C style cast (uint32_t). It should be possible to do search and replace of the (uint32_t), I can do this post merge, but it would probably be better done prior to merging. Could you change this? Thanks.

@LaurensVoerman
Copy link
Copy Markdown
Contributor Author

ok, I will change that.
Laurens.

@LaurensVoerman
Copy link
Copy Markdown
Contributor Author

Changed to static_cast<uint32_t>( )
Regards, Laurens.

@vsg-dev
Copy link
Copy Markdown
Owner

vsg-dev commented Dec 11, 2018

Thanks.

@vsg-dev vsg-dev merged commit c381b4c into vsg-dev:master Dec 11, 2018
@rainergericke rainergericke mentioned this pull request Nov 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants