RFR: 8224087: Compile C code for at least C99 Standard compliance
David Holmes
david.holmes at oracle.com
Wed May 22 06:39:35 UTC 2019
Thanks Sergey!
David
On 22/05/2019 4:33 am, Sergey Bylokhov wrote:
> +1
>
> On 21/05/2019 06:49, Erik Joelsson wrote:
>> Looks even better!
>>
>> /Erik
>>
>> On 2019-05-20 17:56, David Holmes wrote:
>>> Thank you everyone for taking a look at this.
>>>
>>> Here is version 2:
>>>
>>> http://cr.openjdk.java.net/~dholmes/8224087/webrev.v2/
>>>
>>> Changes:
>>> - set c99 rather than gnu99
>>> - Volker's change for xlc to match gcc and clang
>>> - added short note to build doc (can do wiki later)
>>> - cosmetic change of name to make variable based on other feedback
>>> during the C++14 discussion
>>>
>>> Thanks,
>>> David
>>>
>>> On 20/05/2019 5:40 pm, David Holmes wrote:
>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8224087
>>>> webrev: http://cr.openjdk.java.net/~dholmes/8224087/webrev/
>>>>
>>>> The need to remove a for-loop declaration expression to appease gcc
>>>> 4.8 annoyed me enough to investigate setting C99 as our minimum
>>>> allow C-language level when compiling. It turned out to be a lot
>>>> more complex a situation than I thought due to toolchain quirks. See
>>>> lots of details in the bug report.
>>>>
>>>> To summarise the changes:
>>>> - gcc: force to -std=gnu99
>>>> - clang force to -std=gnu99
>>>> - Solaris studio - no effective change
>>>> - Visual Studio - no change
>>>> - xlc - no effective change (but we use the explicit flag rather
>>>> than accepting it as default)
>>>>
>>>> I've checked how this works with all the toolchains except xlc as I
>>>> have no access to that. Some assistance from someone who can verify
>>>> the correctness on xlc would be appreciated.
>>>>
>>>> Thanks,
>>>> David
>
>
More information about the build-dev
mailing list