Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use extern "C" to remove C++ name mangling #2085

Merged
merged 3 commits into from
Oct 1, 2021

Conversation

doingnz
Copy link
Contributor

@doingnz doingnz commented Oct 1, 2021

Description

Apply extern "C" {...} at the .h or top of C/CPP files, not around method bodies.
Remove methods with appendied "_C" after applying extern "C" to function prototype.

Motivation and Context

Remove redundant "_C" method calls to avoid speed penalty on methods called often.
Small space saving and less methods to maintain.

How Has This Been Tested?

Build ESP32 and STM32 sample projects.

Screenshots

Types of changes

  • Improvement (non-breaking change that improves a feature, code or algorithm)
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Config and build (change in the configuration and build system, has no impact on code or features)
  • Dependencies (update dependencies and changes associated, has no impact on code or features)
  • Unit Tests (work on Unit Tests, has no impact on code or features)
  • Documentation (changes or updates in the documentation, has no impact on code or features)

Checklist:

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

Apply extern "C" {...}  at the .h or top of C/CPP files, not around method body.
@nfbot
Copy link
Member

nfbot commented Oct 1, 2021

Hi @doingnz,

I'm nanoFramework bot.
Thank you for your contribution!

A human will be reviewing it shortly. 😉

Automated fixes for code style.
@nfbot
Copy link
Member

nfbot commented Oct 1, 2021

@doingnz there are issues with the code style on the source files.
A PR was submitted with the code style fixes. Please click doingnz#13, review the changes if you want and merge it.

Make sure to follow the project code style. Check the details here on how it works and the tools required to help you with that.

@josesimoes
Copy link
Member

@doingnz please merge the PR with the code style fixes 😉

…9781-4a6a-46e7-b58a-557c94e52981

Code style fixes for nanoframework/nf-interpreter PR#2085
Copy link
Member

@josesimoes josesimoes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Nice improvement. 👏🏻

@josesimoes josesimoes merged commit 9192749 into nanoframework:develop Oct 1, 2021
@doingnz doingnz deleted the develop-clean-up-extern-C branch October 1, 2021 08:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants