-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Fix order of arguments with -cclib XXX #761
Conversation
It would be easier to review the change if you had separated the factorization of common code, in one commit, and the changes with respect to the current behavior in the other. (On the other hand, the extra commit with commit message "xxx" could be squashed into one of those two commits.) I won't have the time to give this a proper review in the following days. @whitequark, do you have any opinion? I must say that I'm worried by thpse weird C-compilation-related failures that turn up in the 4.04 branch -- if I was the release manager I would consider reverting the whole change from 4.04. |
@damiendoligez we discussed this PR (if I understand correctly) but it's not merged yet. |
@gasche @damiendoligez What do you think ? |
I will let Damien review this. Note: to squash commits as the author of the pull request, you can just do
This will update the pull request. We ask external contributors to do this (instead of squashing on our end) because there are many PRs and few mergers so it's better to spend the time on the sender side. |
I'm sure you're already aware of it, but GitHub has added a "Confirm squash and merge" mode for merging in its UI (this does not work in case of conflicts, of course). This would work for instance for this PR. |
This is a follow-up to #758. |
if List.filter (function | ||
| ProcessCFile name -> c_object_of_filename name <> output_name | ||
| _ -> false) !deferred_actions <> [] then | ||
fatal "Options -c and -o are incompatible when compiling C files"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This error message is not good enough... Either describe the condition precisely, or always trigger the error when both -c
and -o
are given with a C source file.
Except for the error message, this looks good to me. I'm testing it on OPAM packages. I'll add the |
Can anyone find a better phrasing for the error? If not, let's squash and merge. |
Maybe the error message can be changed later after the merge, if somebody finds something better... |
Please see the discussion in ocaml/opam-repository#7369 : I believe that rejecting combined
I think that both
ought to work, and I'm sure that was the intent of the original change #464. |
In 4.04.0+beta1, |
Something could still be wrong with the way @lefessan @gasche @damiendoligez : can we try to agree on the intended behavior and make sure it is implemented properly? |
This should be fixed by #9960. |
Bug fix in amd64.S and general cleanup
…tch (ocaml#761) Co-authored-by: Sabine Schmaltz <sabine@tarides.com>
I think the current processing of arguments in 4.04 is completely broken.
Here is a patch to fix most of the problems:
-c
and-o
-c
and-o
are used on a C file with-o
targetting a different name that the one produced byocamlc
main.ml
andoptmain.ml
moved tocompenv.ml
@damiendoligez