Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

MPR#7639: configure warnings on Mac OS X High Sierra (10.13)#1371

Merged
xavierleroy merged 2 commits intoocaml:trunkfrommshinwell:high-sierra-configure
Sep 27, 2017

Conversation

mshinwell
Copy link
Contributor

It seems that on OS X 10.13 atypedef from a header file comes into scope for theint64align.c test (used duringconfigure) which definesint64_t aslong long. We try to redefine it aslong and an error occurs. (This behaviour is only seen once the XCode tools have been installed.) I don't know why this didn't happen on previous versions---although the previous versions do still define it aslong long in the corresponding header file.

Since we are planning to replace theconfigure infrastructure anyway I propose the fix in this pull request. It seems rather unlikely that Intel will introduce architectural constraints on integer alignment in the short term.

There was also a semi-related bug inconfigure with a stray backslash.

Incidentally, this is not related to MPR#7591 / GPR#1257. The alignment warnings from the linker there are a new introduction which I believe to be due to preparations for a new dynamic loader which forbids misaligned references into the data section. There are some more details here:http://docs.huihoo.com/apple/wwdc/2017/413_app_startup_time_past_present_and_future.pdf. For the moment I don'tthink we need to do anything (any problems with this will show up as linker warnings in any case).

Tested on OS X 10.13 including running the testsuite.

@xavierleroy If you dislike the fix in this pull request, my branch is available for you to push to.

@mshinwellmshinwell added this to the4.06.0 milestoneSep 26, 2017
@xavierleroy
Copy link
Contributor

The code in int64align.c is awful in that it reuses a type nameint64_t which is in principle reserved for the C standard library. It would be prudent to renameint64_t into something else, e.g.int64 orint_64 ormy_int_64.

@mshinwell
Copy link
ContributorAuthor

I have pushed a revised version which renames the type. This seems to operate correctly. (I think we're probably testinglong instead oflong long but the answer is correct.)

Copy link
Member

@damiendoligezdamiendoligez left a comment

Choose a reason for hiding this comment

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

I think this is good. To do it really clean, you'd have to duplicate the detection ofstdint.h and the#ifdef logic fromconfig.h but it's not worth the trouble.

@xavierleroy
Copy link
Contributor

That will do just fine, thanks! Merging...

@xavierleroyxavierleroy merged commita90d8c3 intoocaml:trunkSep 27, 2017
xavierleroy pushed a commit that referenced this pull requestSep 27, 2017
MacOS High Sierra balks at the redefinition of `int64_t`.
@xavierleroy
Copy link
Contributor

Cherry-pick: [4.060fa7718]

@xavierleroyxavierleroy removed their request for reviewSeptember 27, 2017 13:56
xavierleroy added a commit that referenced this pull requestSep 27, 2017
MacOS High Sierra balks at the redefinition of `int64_t`.
@xavierleroy
Copy link
Contributor

Another cherry-pick: [4.0523eb28c]

xavierleroy added a commit that referenced this pull requestSep 27, 2017
xavierleroy added a commit that referenced this pull requestSep 27, 2017
xclerc pushed a commit to xclerc/ocaml that referenced this pull requestNov 9, 2017
MacOS High Sierra balks at the redefinition of `int64_t`.
EduardoRFS pushed a commit to EduardoRFS/ocaml that referenced this pull requestAug 8, 2020
MacOS High Sierra balks at the redefinition of `int64_t`.
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers

@damiendoligezdamiendoligezdamiendoligez approved these changes

Assignees
No one assigned
Labels
Projects
None yet
Milestone
4.06.0
Development

Successfully merging this pull request may close these issues.

3 participants
@mshinwell@xavierleroy@damiendoligez

[8]ページ先頭

©2009-2025 Movatter.jp