[PATCH] coroutines: co_returns are statements, not expressions.

2020-06-01 Thread Iain Sandoe
Hi This corrects an typo in the CO_RETURN_EXPR tree class. Although it doens’t fix any PR or regression - it seems to me that it would be sensible to apply this to 10.2 as well as master (or it’s an accident waiting to happen). OK for master? 10.2 (after some bake)? thanks Iain gcc/cp/ChangeLog

Re: [PATCH v2] C-family : Add attribute 'unavailable'.

2020-12-21 Thread Iain Sandoe
nts on the revised patch, or is this now OK for master? (reiterating, that we are not inventing something new here - but rather trying to achieve compatibility with implementations that already have the attrinbute). thanks Iain Iain Sandoe wrote: Martin Sebor wrote: On 11/29/20 6:56 PM, I

[pushed] Darwin : Update the kernel version to macOS version mapping.

2020-12-21 Thread Iain Sandoe
Hi We are currently computing the wrong macOS version information for Darwin kernel editions >= 20.1 (because the computation rules have changed). This fixes the computation as far as it’s currently defined. The patch is an addendum to “Darwin20 is macOS 11” and is needed on the open [and closed

[PATCH v2] C++ : Add the -stdlib= option.

2020-12-22 Thread Iain Sandoe
Hi Jason, Jason Merrill wrote: > On 11/11/20 3:58 PM, Iain Sandoe wrote: >> This option allows the user to specify alternate C++ runtime libraries, >> for example when a platform uses libc++ as the installed C++ runtime. >> It is the same spelling as a clang option th

[pushed] Darwin : Adjust handling of MACOSX_DEPLOYMENT_TARGET for macOS 11.

2020-12-24 Thread Iain Sandoe
(resending, this never seemed to make it to patches@) The shift to macOS version 11 also means that '11' without any following '.x' is accepted as a valid version number. This adjusts the validation code to accept this and map it to 11.0.0 which matches what the clang toolchain appears to do.

[pushed] Objective-C++ : Fix up testcase EOF diagnostics.

2020-12-26 Thread Iain Sandoe
Hi Some Objective-C++ testcases need modification in reponse to the solution to PR 96045. Tested on x86_64-darwin9, 16 and 19 pushed to master thanks Iain gcc/testsuite/ChangeLog: PR c++/96045 * obj-c++.dg/property/property-neg-6.mm: Adjust EOF diagnostic location.

[pushed] Darwin : Adjust defaults for current bootstrap constraints.

2021-01-02 Thread Iain Sandoe
Hi, Part of fixing up headers to handle Darwin20. The toolchain now requires a C++11 compiler to bootstrap and none of the older Darwin toolchains which were based on stabs debugging are suitable. We can simplify the debug setup now. tested on darwin8, 9, 16, 18, 20 x86_64-linux-gnu pushed to m

[pushed] Darwin, Simplify headers 0/5 : Move spec for Darwin 10 unwind stub [NFC].

2021-01-02 Thread Iain Sandoe
Hi, The darwinN.h headers were (presumably) introduced to allow specs to be adjusted when there was no mmacosx-version-min handling, or that was considered unreliable. We have version-specific specs for the values that have configuration data, and the version is set in the driver (so may be consi

[pushed] Darwin, Simplify headers 1/5 : Move LINK_GCC_C_SEQUENCE_SPEC [NFC].

2021-01-02 Thread Iain Sandoe
Hi, There is no need to make the LINK_GCC_C_SEQUENCE_SPEC conditional on configuration parameters, it is adequately conditionalized on the macosx-version-min. tested as per part 0, pushed to master Iain gcc/ChangeLog: * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Move from her

[pushed] Darwin, Simplify headers 1/5 : Move LINK_GCC_C_SEQUENCE_SPEC [NFC].

2021-01-02 Thread Iain Sandoe
Hi There is no need to make the LINK_GCC_C_SEQUENCE_SPEC conditional on configuration parameters, it is adequately conditionalized on the macosx-version-min. tested as per pwert 0, pushed to master Iain gcc/ChangeLog: * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Move from her

[pushed] Darwin, Simplify headers 2/5 : Move spec for STACK_CHECK_STATIC_BUILTIN.

2021-01-02 Thread Iain Sandoe
Hi We now need a modern (C++11) toolchain to bootstrap GCC, so there's no need to skip the stack protect for Darwin < 9. tested as per part 0, pushed to master Iain gcc/ChangeLog: * config/darwin9.h (STACK_CHECK_STATIC_BUILTIN): Move from here.. * config/darwin.h (STACK_CHECK_ST

[pushed] Darwin, Simplify headers 3/5 : Delete dead code.

2021-01-02 Thread Iain Sandoe
Hi, Darwin defines ASM_OUTPUT_ALIGNED_DECL_COMMON which is used in preference to ASM_OUTPUT_ALIGNED_COMMON, which makes the latter definition dead code. Remove this. tested as part 0 pushed to master Iain gcc/ChangeLog: * config/darwin9.h (ASM_OUTPUT_ALIGNED_COMMON): Delete. --- gcc/co

[pushed] Darwin, Simplify headers 4/5 : Remove redundant headers.

2021-01-02 Thread Iain Sandoe
Hi The darwinN.h headers (with the sole exception of darwin7.h, which contains a target macro definition) now only contain values that set fall-backs for cross-compilations, these can be provided from the config.gcc script which means we no longer need the darwinN.h - so delete them. tested as pe

[pushed] Darwin : Adjust defaults for the linker.

2021-01-02 Thread Iain Sandoe
Hi, Ideally, the linker will be queried for its version and that will be used to determine capabilities that cannot be discovered from reasonable configuration testing. When building cross tools, this might not be possible, and we have strategies for providing useful defaults. These are adjusted

[pushed] testsuite, coroutines : Fix a bad testcase [PR96504].

2021-01-06 Thread Iain Sandoe
Hi Where possible (i.e. where that doesn't alter the intent of a test) we use a suspend_always as the final suspend and a test that the coroutine was 'done' to check that the state machine had terminated correctly. Sometimes, filed PRs have 'suspend_never' as the final suspend expression and tha

[PATCH] aarch64 : Mark rotate immediates with '#' as per DDI0487iFc.

2021-01-08 Thread Iain Sandoe
Hi, The armv8_arm manual [C6.2.226, ROR (immediate)] uses a # in front of the immediate rotation quantity. Although, it seems, GAS is able to infer the # (or is leninent about its absence) assemblers based on the LLVM back end expect it and error out. tested on aarch64-linux-gnu (gcc115) and aar

Re: [PATCH] aarch64 : Mark rotate immediates with '#' as per DDI0487iFc.

2021-01-12 Thread Iain Sandoe
Hi Richard, Richard Sandiford wrote: Iain Sandoe writes: The armv8_arm manual [C6.2.226, ROR (immediate)] uses a # in front of the immediate rotation quantity. Although, it seems, GAS is able to infer the # (or is leninent about its absence) assemblers based on the LLVM back end expect

[PATCH] coroutines: Add a cleanup expression for g-r-o when needed [PR95477].

2020-06-08 Thread Iain Sandoe
Hi The PR reports that we fail to destroy the object initially created from the get-return-object call. Fixed by adding a cleanup when the DTOR is non-trivial. In addition, to meet the specific wording that the call to get_return_object creates the glvalue for the return, we must construct that

Re: [PATCH] coroutines: Add a cleanup expression for g-r-o when needed [PR95477].

2020-06-08 Thread Iain Sandoe
Nathan Sidwell wrote: On 6/8/20 5:17 AM, Iain Sandoe wrote: Hi The PR reports that we fail to destroy the object initially created from the get-return-object call. Fixed by adding a cleanup when the DTOR is non-trivial. In addition, to meet the specific wording that the call to

[PATCH/RFC] How to fix PR95440

2020-06-09 Thread Iain Sandoe
Hi C++ folks, There are a number of places in the coroutine codegen where we need to build calls to promise methods. Such methods can, in several cases, also be constexpr or static (or both) which leads to the PR, Now the mechanism I use is this; 1/ lookup the method in the relevant scop

Re: [PATCH/RFC] How to fix PR95440

2020-06-10 Thread Iain Sandoe
Hi Jason, Jason Merrill wrote: > On Tue, Jun 9, 2020 at 5:04 AM Iain Sandoe wrote: > > /* Don't bother reversing an operator with two identical parameters. > */ > - else if (args->length () == 2 && (flags & LOOKUP_REVERSED)) > +

[PATCH] coroutines: Update handling and failure for g-r-o-o-a-f [PR95505]

2020-06-11 Thread Iain Sandoe
Hi, The reason that the code fails is that (by a somewhat complex implied route), when a user adds a 'get-return-on-alloc-fail’ to their coroutine promise, this implies the use of some content from ; we should not ICE because the user forgot that tho. Jonathan and I were discussing whether there’

[PATCH] coroutines: Copy attributes to the outlined functions [PR95518]

2020-06-11 Thread Iain Sandoe
Hi We had omitted the copying of function attributes (including the 'used' status). Mark the outlined functions as artificial, since they are; some diagnostic processing tests this. tested on Linux and Darwin, OK for master? 10.2? thanks Iain gcc/cp/ChangeLog: PR c++/95518 * co

Re: [PATCH] coroutines: Add a cleanup expression for g-r-o when needed [PR95477].

2020-06-12 Thread Iain Sandoe
Iain Sandoe wrote: > Nathan Sidwell wrote: > >> On 6/8/20 5:17 AM, Iain Sandoe wrote: >>> + r = gro_is_void_p ? integer_zero_node : rvalue (gro); >>> + /* The return object is constructed, even if the gro is void. */ >> >> Would error_mar

[PATCH v2] coroutines: Copy attributes to the outlined functions [PR95518, PR95813]

2020-06-24 Thread Iain Sandoe
Hi Nathan, Nathan Sidwell wrote: > On 6/11/20 3:53 PM, Iain Sandoe wrote: >> Hi >> We had omitted the copying of function attributes (including the >> 'used' status). Mark the outlined functions as artificial, since >> they are; some diagnostic processin

[PATCH] powerpc: Restore bootstrap for PPC Darwin.

2020-06-24 Thread Iain Sandoe
Hi, Darwin has signed chars and the fields in the insn_data struct are const char, which leads to a bootstrap fail with "error: comparison of integer expressions of different signedness: 'unsigned int' and 'const char' [-Werror=sign-compare]” OK for master? Iain gcc/ChangeLog: * confi

[pushed] coroutines, testsuite: Update tests for get-return-object errors.

2020-06-24 Thread Iain Sandoe
Hi, Just an improvement to test-coverage, tested on x86_64-darwin,linux powerpc64-linux applied to master, thanks Iain = We updated the handling of the errors for cases when the ramp return cannot be constructed from the user's provided get-return-object method. This updates the testcases

[PATCH] coroutines: Generalize promise expressions [PR95519]

2020-06-25 Thread Iain Sandoe
Hi, The PR points out that the standard does not restrict promise expressions to methods, but the current implementation does. The patch factors out the building of a general promise expression, and then uses it in a fairly mechanical replacement of each case that we need such an expressions. Th

[pushed] coroutines: Handle bad g-r-o-o-a-f cases.

2020-06-26 Thread Iain Sandoe
Hi This fixes an ice-on-invalid I found while working on other cases. tested on x86_64-linux, darwin, powerpc64-linux applied to master as obvious/trivial. thanks Iain --- If we see a get_return_object_on_allocation_failure in the promise, we expect to be able to use it. If this isn't poss

[PATCH] coroutines: Handle awaiters that are sub-objects [PR95736]

2020-06-26 Thread Iain Sandoe
Hi During development, it seemed a reasonable strategy to defer decisions on what needed to be captured in the coroutine frame (to minimize the frame size). In the case of awaitables that are user-variables, params (or otherwise originate outside the coroutine scope), that turns out to make thing

[pushed] coroutines: Improve diagnostics for one allocator case.

2020-06-27 Thread Iain Sandoe
Hi This adds a diagnostic only, tested on x86_64-linux,darwin powerpc64-linux, applied to master as obvious, thanks Iain - If the user provides operator new and that is noexcept, this implies that it can fail with a null return. At that point, we expect to be able to call get_return_obj

[PATCH] coroutines: Collect the function body rewrite code.

2020-06-27 Thread Iain Sandoe
Hi, This is a enabler patch that enables a reasonable approach to fixing 5 reported PRs (it doesn’t fix anything in its own right). It has been tested on x86_64-linux, darwin, powerpc64-linux OK for master / 10.2? thanks Iain -- The standard describes a rewrite of the body of the user-autho

[pushed] coroutines: Handle namespaces while scanning local vars [PR95711].

2020-06-28 Thread Iain Sandoe
Hi, We need to skip past namespace decls when scanning the bind expression var lists checking for local vars. The PR notes that this omission results in an ice-on-valid. tested on x86_64-linux, darwin, powerpc64-linux, applied to master as obvious (and will backport to 10.2). thanks Iain gcc/

[pushed] coroutines: Fix a diagnostic trailing space warning.

2020-06-30 Thread Iain Sandoe
Hi A recently add diagnostic has a trailing space which triggers a warning. Fixed thus. tested on x86_64-darwin, applied to master, will also apply to 10.2 thanks Iain gcc/cp/ChangeLog: * coroutines.cc (morph_fn_to_coro): Remove trailing space in a diagnostic. --- gcc/cp/corout

[pushed] C++ : Remove an overzealous checking assert [PR97871]

2020-11-17 Thread Iain Sandoe
Hi, This amends my commit from r11-4927 to remove an assert. tested on x86_64-darwin, pushed to master Iain --- It seems we accept __attribute__(()) without any diagnostic at present, so my added checking assert fires for something like: __attribute__ (()) int a; Fixed by removing the as

[pushed] Objective-C++ : Avoid ICE on invalid with empty attributes.

2020-11-18 Thread Iain Sandoe
Hi Empty prefix attributes like: __attribute__ (()) @interface MyClass @end cause an ICE at present. Check for that case and skip them. tested on x86_64-darwin, pushed to master, thanks Iain gcc/cp/ChangeLog: * parser.c (cp_parser_objc_valid_prefix_attributes): Check for empt

[PATCH] Darwin, libgfortran : Do not use environ directly from the library.

2020-11-20 Thread Iain Sandoe
Hi, not sure if this is covered directly by my Darwin maintainer’s hat so … - On macOS / Darwin, the environ variable can be used directly in the code of an executable, but cannot be used in the code of a shared library (i.e. libgfortran.dylib)** In such cases, the function _NSGetEnviron

Re: [PATCH] Darwin, libgfortran : Do not use environ directly from the library.

2020-11-21 Thread Iain Sandoe
Hi Thomas, Thomas Koenig via Fortran wrote: tested on a number of Darwin platforms old and new, and on x86_64/powerpc64-linux, OK for master? … and backports to open branches? One question... +# ifdef __APPLE__ +# include +# define environ (*_NSGetEnviron ()) Is it guaranteed that crt

[pushed] Darwin, libsanitizer : Support libsanitizer for x86_64-darwin20.

2020-11-21 Thread Iain Sandoe
Hi The sanitizer is supported for at least x86_64 and Darwin20. tested on a bunch of darwin platforms (including x86_64-darwin20) and on x86_64-linux, pushed to master thanks Iain libsanitizer/ChangeLog: * configure.tgt: Allow x86_64 Darwin2x. --- libsanitizer/configure.tgt | 2 +- 1

[pushed] Darwin : Avoid a C++ ODR violation seen with LTO.

2020-11-22 Thread Iain Sandoe
Hi We have a similar code pattern in darwin-c.c to one in c-pragmas (most likely a cut & paste) with a struct type used locally to the TU. With C++ we need to rename the type to avoid an ODR violation. tested on x86_64-darwin19 ‘—with-build-config=bootstrap-lto-noplugin’ pushed to master, thank

Re: [PATCH] Objective-C++ : Allow prefix attrs on linkage specs.

2020-11-23 Thread Iain Sandoe
Jason Merrill wrote: On 11/7/20 10:11 AM, Iain Sandoe wrote: + warning_at (token1->location, OPT_Wattributes, "attributes are" + " only permitted in this position for Objective-C++," + " ignored&q

[PATCH] config.sub, config.guess : Import upstream 2020-11-07.

2020-11-23 Thread Iain Sandoe
Hello, The current config.guess/sub version do not support the recently released Darwin platforms; current upstream does. This imports from: sha1 77632d92f25e26b95c64afd3700d51bd03587613 Date: 2020-11-07 04:46:23 + ChangeLog: * config.guess: Import latest upstream.

[PATCH 1,2] Darwin : Update libtool and dependencies for Darwin20 [PR97865]

2020-11-23 Thread Iain Sandoe
Hi This fixes a blocker for x86_64 darwin20 (a.k.a macOS 11) It is needed on all open branches too. (probably this comes under my Dariwn hat - but since it involves regenerating all the configure scripts… I’d welcome another pair of eyes) tested on: darwin8-darwin20, powerpc, i686, x86_64, ar

[PATCH] configury : Fix LEB128 support for non-GNU assemblers.

2020-11-25 Thread Iain Sandoe
Hi, I’ve had this patch in my Darwin trees for (literally) years, it is relevant to the GCC ports that use a non-binutils assembler. At present, even if such an assembler supports LEB128, the GCC config is setting HAVE_LEB128 = 0. The ports I know of that can benefit from a change here are:

Re: [PATCH] configury : Fix LEB128 support for non-GNU assemblers.

2020-11-26 Thread Iain Sandoe
Hi Rainer, Rainer Orth wrote: The ports I know of that can benefit from a change here are: [...] Solaris (bootstrapped and tests running on GCC211, but maybe Rainer would want wider checks). I've just manually tried the augmented test on Solaris 10-11.4, SPARC and x86. While th

Re: [PATCH] configury : Fix LEB128 support for non-GNU assemblers.

2020-11-26 Thread Iain Sandoe
Rainer Orth wrote: unfortunately, Solaris/SPARC results are miserable: So without further investigation, we cannot use the leb128 directives with Solaris/SPARC as. I think Andrew was running GCN (not sure of the results there) - but, I suppose that the simplest modification is to do eli

PING^1 Re: [PATCH v2] C-family : Add attribute 'unavailable'.

2020-11-27 Thread Iain Sandoe
Hi I believe this version addressed Joseph’s and Richard’s comment, but it C++ review. thanks Iain Iain Sandoe wrote: Joseph Myers wrote: This patch seems to be missing documentation for the new attribute in extend.texi. Apologies, for that omission, revised patch includes the

PING^1 Re: [PATCH] C++ : Add the -stdlib= option.

2020-11-27 Thread Iain Sandoe
Hi Folks, this patch needs C++ review thanks Iain Iain Sandoe wrote: resending - the first & second attempt didn’t seem to make it to gcc-patches. Hi This option allows the user to specify alternate C++ runtime libraries, for example when a platform uses libc++ as the install

Re: [PATCH] Objective-C++ : Allow prefix attrs on linkage specs.

2020-11-28 Thread Iain Sandoe
(resending - this didn’t seem to reach gcc-patches@) Jason Merrill wrote: On Mon, Nov 23, 2020 at 8:52 AM Iain Sandoe wrote: Jason Merrill wrote: (NOTE: likewise, ^~~ starting indent is below ‘int’ for a fixed spacing font) === I’m inclined to think that the second is more useful

Re: [PATCH] configure: Support building D front-end on *-*-darwin*

2020-11-29 Thread Iain Sandoe
Hi Iain Iain Buclaw wrote: The bootstrap has been succeeding for some time now, there's no need to set it as an unsupported language. OK for mainline? At present, this breaks bootstrap on 32 bit Darwin hosts. Once that’s resolved, then it seems a reasonable to make sure that the D FE is bu

Re: [PATCH] d: Add darwin support for D language front-end

2020-11-29 Thread Iain Sandoe
Hi Iain Iain Buclaw wrote: This patch adds necessary predefined version symbols and support for moduleinfo sections for darwin to allow testing libphobos support. OK for mainline? As we discussed off-list, this sets ABI (the section names are visible and part of the contract with the run

Re: [committed] d: Remove d_size_t from front-end sources (PR 87788)

2020-11-29 Thread Iain Sandoe
Iain Buclaw via Gcc-patches wrote: The typedef for d_size_t assumes that the implementation of the front-end is written in D itself, where size_t can map only to uint32_t or uint64_t. As that is not the case for the current D front-end, the typedef should be removed. This would fix the bootstr

Re: [PATCH v2] C-family : Add attribute 'unavailable'.

2020-11-29 Thread Iain Sandoe
Hi Martin, Martin Sebor via Gcc-patches wrote: On 11/10/20 12:38 PM, Iain Sandoe wrote: —— commit message. If an interface is marked 'deprecated' then, presumably, at some point it will be withdrawn and no longer available. The 'unavailable' attribute makes it

Re: [committed] Fix hppa64-hpux11 build to remove source paths from embedded path.

2020-12-01 Thread Iain Sandoe
Hi Dave, John David Anglin wrote: Fix hppa64-hpux11 build to remove source build paths from embedded path. This change adds the +nodefaultrpath ld option to remove all library paths that were specified with the -L option from the embedded path. Without this options, the emebedded path fo

[pushed] Darwin, D : Adjust the X spec to cater for duplicate use.

2020-12-01 Thread Iain Sandoe
Hi For Darwin, the '-X' flag is an obsolete spelling for a command to tell the linker to 'strip local symbols'. This has been the default action for a long time - but, as per the usual GCC approach, although the flag is retired, we have not removed it; rather, we just delete it in the driver sel

Re: [PATCH v2] C-family : Add attribute 'unavailable'.

2020-12-01 Thread Iain Sandoe
Hi Martin, Martin Sebor wrote: On 11/29/20 6:56 PM, Iain Sandoe wrote: Martin Sebor via Gcc-patches wrote: On 11/10/20 12:38 PM, Iain Sandoe wrote: —— commit message. If an interface is marked 'deprecated' then, presumably, at some point it will be withdrawn and no longer

Re: [PATCH 1, 2] Darwin : Update libtool and dependencies for Darwin20 [PR97865]

2020-12-02 Thread Iain Sandoe
given that this is a blocker for Darwin20 and is Darwin-local I plan to apply it (with the spello fixes) if there are no more comments in the next 24h. thanks Iain Jonathan Wakely wrote: On 23/11/20 20:01 +, Iain Sandoe wrote: Hi This fixes a blocker for x86_64 darwin20 (a.k.a macOS 11

Re: [PATCH] testsuite: Fix various scan-assembler-symbol-section issues

2020-12-04 Thread Iain Sandoe
Hi Rainer, thanks for looking at this, I was trying to see how to fix the failing Darwin tests last week, and concluded that the absence of target selectors/xfail meant skipping some tests - this is a much better solution. Rainer Orth wrote: I recently started looking into scan-assembler-symb

[pushed] libsanitizer, Darwin, Bootstrap : Fix bootstrap on Darwin <= 15.

2020-10-18 Thread Iain Sandoe
Hi The latest upstream merge for libsanitizer introduces code that makes use of some macro values that are not available in SDKs for versions of Darwin <= 15 (macOS 10.11). [TBH, I am a bit surprised by this, I was under the impression that upstream supported versions back to Darwin11 / macOS 10

[PATCH] coroutines: Emit error for invalid promise return types [PR97438].

2020-10-18 Thread Iain Sandoe
Hi, At one stage, use cases were proposed for allowing the promise type to contain both return_value and return_void. That was not accepted into C++20; so we should reject it as per the PR. Tested on x86_64-darwin, x86_64-linux-gnu, OK for master? (although this is technically an ‘accepts inval

Re: [Ada] Improve precision of Ada.Directories.Modification_Time

2020-10-21 Thread Iain Sandoe
Arnaud Charlet wrote: This patch breaks bootstrap on Darwin platforms. Pierre-Marie de Rodat wrote: The modification file time precision now defined by OS. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * adaint.c (__gnat_file_time): New routine. (__gnat_copy_

Re: [patch] Use precision and sign to compare types for ranges

2020-10-22 Thread Iain Sandoe
Hi Andrew, Andrew MacLeod via Gcc-patches wrote: This fixes the second test case in pr 97360. There are a few places in the ranger where we sanity check the types of the ranges. We were using types_compatible_p() but thats not really acccurate as gimple allows types which are useless_typ

Re: [Ada,FYI] revamp ada.numerics.aux

2020-10-23 Thread Iain Sandoe
Rainer Orth wrote: > Hi Alexandre, > >> On Oct 19, 2020, Andreas Schwab wrote: >> >>> -nostdinc a-nallfl.ads -o a-nallfl.o >>> a-nallfl.ads:48:13: warning: intrinsic binding type mismatch on return value >>> a-nallfl.ads:48:13: warning: intrinsic binding type mismatch on argument 1 >>> a-nallf

Re: [Ada] Improve precision of Ada.Directories.Modification_Time

2020-10-23 Thread Iain Sandoe
Hans-Peter Nilsson wrote: > On Wed, 21 Oct 2020, Iain Sandoe wrote: > >> Arnaud Charlet wrote: >> >>>> This patch breaks bootstrap on Darwin platforms. >>>> >>>> Pierre-Marie de Rodat wrote: >>>> >>>>> The mod

[PATCH] Ada, Darwin, PowerPC : Fix bootstrap after 128 int changes.

2020-10-25 Thread Iain Sandoe
Hi. Three bootstrap breaks in one week must be close to a record, even for powerpc-darwin ;) tested on powerpc-darwin9 (m32/m64), OK for master? Iain P.S. There are some apparent regressions/new GNAT fails for the m64 multilib but these will be addressed separately. Excess errors: validity_chec

Re: [pushed] Darwin, libffi, testsuite: Ensure we pick up the convenience lib.

2023-01-22 Thread Iain Sandoe
are first traversed >> looking for shared libraries, and then again looking for archives. >> >> We want the paths to be searched for both shared and archives in order >> so that we will find the non-shared libffi in the testsuite (otherwise >> the installed version in th

Re: [PATCH] driver, toplevel: Avoid emitting the version information twice.

2023-02-02 Thread Iain Sandoe
> On 30 Jan 2023, at 07:48, Richard Biener wrote: > > On Sun, Jan 29, 2023 at 12:35 PM Iain Sandoe via Gcc-patches > wrote: >> >> Technically, this is seems to be a regression somewhere between 4.2 and >> 4.6 but, it seems, not enough for anyone to care t

Re: [PATCH] Darwin: Future-proof -mmacosx-version-min

2022-06-10 Thread Iain Sandoe
Hi Mark, > On 10 Jun 2022, at 15:56, Mark Mentovai wrote: > > f18cbc1ee1f4 (2021-12-18) updated various parts of gcc to not impose a > Darwin or macOS version maximum of the current known release. Different > parts of gcc accept, variously, Darwin version numbers matching > darwin2*, and macOS m

Re: [PATCH] Fix PR target/104871 (macosx-version-min wrong for macOS >= Big Sur (darwin20))

2022-06-11 Thread Iain Sandoe
Hi Simon, thanks for the patch. > On 11 Jun 2022, at 10:17, Simon Wright wrote: > > (resent with correct address for Iain) > > This is the same sort of problem as in PR80204: at present, GCC 11 & 12 > assume that if the > OS version is >= 20, the compiler should see --mmacosx-version-min={ma

Re: [PATCH] Fix PR target/104871 (macosx-version-min wrong for macOS >= Big Sur (darwin20))

2022-06-11 Thread Iain Sandoe
Hi Simon, > On 11 Jun 2022, at 20:23, Simon Wright wrote: > > On 11 Jun 2022, at 11:37, Iain Sandoe wrote: >> >> Hi Simon, >> >> thanks for the patch. >> >>> On 11 Jun 2022, at 10:17, Simon Wright wrote: >>> >>> (resen

Re: [PATCH] Fix ICE: in function_and_variable_visibility, at ipa-visibility.c:795 (PR99466)

2021-03-13 Thread Iain Sandoe
Hi Iain, Iain Buclaw via Gcc-patches wrote: This patch fixes an ICE caused by emutls routines generating a weak, non-public symbol for storing the initializer of a weak TLS variable. In get_emutls_init_templ_addr, only declarations that were DECL_ONE_ONLY would get a public initializer symbol

[PATCH] coroutines : Avoid generating empty statements [96749].

2021-03-14 Thread Iain Sandoe
Hi In the compiler-only idiom: " a = (target expr creates temp, op uses temp) " the target expression variable needs to be promoted to a frame one (if the expression has a suspend point). However, the only uses of the var are in the second part of the compound expression - and we were creating an

[PATCH] coroutines : Handle for await expressions in for stmts [PR98480].

2021-03-14 Thread Iain Sandoe
Hi Apparently, I had a brainstorm when posting patches to cover the cases with await expressions in do {} while; and while {} ; and omitted the for loop case. Fixed thus. tested on x86_64-darwin, x86_64-linux-gnu and with cppcoro and folly/coroutines. OK for master / 10.x? thanks Iain gcc/cp/

[PATCH] coroutines : Handle rethrow from unhandled_exception [PR98704].

2021-03-14 Thread Iain Sandoe
Hi Although there is still some discussion in CWG2451 on this, the implementors are agreed on the intent (thus it is wording that is expected to change - the implementations should be brought into sync). tested on x86_64-darwin, x86_64-linux-gnu and with cppcoro and folly/coroutines. OK for mast

[PATCH] coroutines : Convert await_ready () expressions to bool [PR99047].

2021-03-14 Thread Iain Sandoe
Hi The awaiter.await_ready() should be converted per [expr.await]/3 (3.6) await-ready is the expression e.await_ready(), contextually converted to bool. The conversion had been omitted, fixed as below, tested on x86_64-darwin, x86_64-linux-gnu, and on cppcoro and folly/coroutines. OK for

[PATCH] libstdc++, Darwin, ppc : Add new long double symbols.

2021-03-14 Thread Iain Sandoe
Hi We need to add the symbols for to_chars and from_chars for the long double cases. The testsuite test cases fail to build without this, so there’s no need for an additional test. Tested on powerpc-darwin9. OK for master? thanks Iain libstdc++-v3/ChangeLog: * config/os/bsd/darwin/ppc-

[PATCH] libstdc++, testsuite, Darwin : Adjust for names used in system headers.

2021-03-14 Thread Iain Sandoe
Hi, What is slightly odd here is that this problem shows up for installed testing, but not when the test-suite is run in-tree. However, the issue is clear (and doesn’t need to depend on figuring out why it doesn’t show in-tree). tested on powerpc-darwin9, x86_64-darwin OK for master? thanks Iai

ping^2 Re: [PATCH] Objective-C++ : Fix handling of unnamed message parms [PR49070].

2021-03-15 Thread Iain Sandoe
Iain Sandoe wrote: Although this is an Objective-C++ patch, I need to touch stuff outside “objc local” contexts, so think it needs review, (this is a regression fix for all open branches). Iain Sandoe wrote: We were discussing proposed reflection splicing syntax - [:reflection:] in SG7

Re: [PATCH] coroutines: Correct frame capture of compiler temps [PR95591+4].

2021-03-15 Thread Iain Sandoe
Iain Sandoe wrote: Iain Sandoe wrote: Jason Merrill wrote: I notice this patch includes + var_nest_node () = default; which will break GCC 10 bootstrap with a C++98 compiler; we only switched to C++11 for GCC 11. Hmm, the patch was already backported… … I will fix this. I missed

[pushed] testsuite, Darwin : Fix match output for asan/memcmp-1.c.

2021-03-17 Thread Iain Sandoe
Hi, The Darwin part of libasan produces different output for memcmp cases from other ports. The GCC implementation does produce the same output for this test as the clang one (modulo the two points below). 1. To be more compatible with Linux, Darwin testcases that include string.h should set _FO

[pushed] testsuite, Darwin : Fix the asan/strncpy-overflow-1 test.

2021-03-17 Thread Iain Sandoe
Hi cleaning up some long-standing testsuite noise for the sanitzer. 1. To be more compatible with Linux, Darwin testcases that include string.h should set _FORTIFY_SOURCE=0 since, otherwise, it will be defaulted on and the _chk versions of the string builtins will be used. This testcase fails ot

[pushed] Darwin : Fix build failure for powerpc-darwin8 [PR99661].

2021-03-19 Thread Iain Sandoe
Hi, Seems I fluffed a merge or rebase .. A hunk had been missed from r11-6417, fixed thus: tested with a complete cross from x86_64-darwin16 -> powerpc-darwin8 and a host only build on x86_64-linux-gnu. pushed to master, thanks Iain gcc/ChangeLog: PR target/99661 * config.gcc

[PATCH] Darwin: Rework handling for unwinder code in libgcc_s and specs [PR80556].

2021-03-23 Thread Iain Sandoe
Hi I expect this to be my last (substantial) regression fix for GCC-11. Although this is a Darwin patch, I’d welcome any comments - if none appear then I plan to apply the patch later in the week. tested on Darwin8 .20, x86_64-linux-gnu and powerpc-linux-gnu. thanks Iain == This address

[pushed] Darwin : Address a translation comment.

2021-03-23 Thread Iain Sandoe
Hi I modified the diagnostic message to avoid a build-time warning omitting a colon intentionally; since that has produced a translation comment, this adds the colon back. tested with a build of host-darwin (produces no build-time diagnostic). pushed to master, thanks Iain Add a ':' to ma

[PATCH] modules : Make sure we include in system.h.

2021-03-31 Thread Iain Sandoe
Hi, This fixes a stage 1 bootstrap fail on some Darwin versions when the bootstrap compiler is clang / libc++ from Xcode. bootstrapped on x86_64-darwin16, x86_64-linux-gnu OK for master? thanks Iain It appears that many targets include the map header transitively in other std headers inc

[pushed] Darwin : Fix whitespace and delete unused code (NFC).

2021-04-03 Thread Iain Sandoe
Hi, tested on x86_64-darwin. pushed to master, thanks Iain -- Fix some incorrect indenting and remove two cases where we had code '#if 0'-d out. gcc/ChangeLog: * config/darwin.c (machopic_legitimize_pic_address): Fix whitespace, remove unused code. --- gcc/config/darwin.c

[pushed] Darwin : Fix out-of-bounds access to df_regs_ever_live.

2021-04-03 Thread Iain Sandoe
Hi I’ve been chasing a bootstrap failure present when we use clang as the bootstrap - and seen for GCC11 (where the requirement is C++11) even though the same clang toolchain bootstraps GCC-10. The C++11 aspect turned out to be a red-herring .. the problem was latent already, and is a long-standi

[pushed] Darwin, X86 : Fix bootstrap break from flags changes.

2021-04-21 Thread Iain Sandoe
Hi, @Martin I am not sure from the commit messages for this series whether my change below is complete (it is enough to make bootstrap succeed so I have applied it anyway). you mention TARGET_* but that is too general - however i386/darwin.h does have some other ISA-specific TARGET_* settings (m

Re: [pushed] Darwin, X86 : Fix bootstrap break from flags changes.

2021-04-21 Thread Iain Sandoe
Martin Liška wrote: On 4/21/21 9:50 PM, Iain Sandoe wrote: If you could take a quick look it would be appreciated - I don’t have much state for the patch you applied. The patch looks correct to me. thanks! Iain

Re: [PATCH 3/3] Use startswith in targets.

2021-04-21 Thread Iain Sandoe
Martin Liska wrote: gcc/config/darwin-c.c | 9 +- gcc/config/darwin.c | 141 + The darwin changes are OK, looks like a nice cleanup, thanks Iain

[pushed] Darwin : Adjust darwin_binds_local_p for PIC code [PR100152].

2021-04-24 Thread Iain Sandoe
Hi Darwin's dynamic linker supports interposition and lazy symbol binding. If we are generating PIC code and a symbol is public, then it could potentially be indirected via a lazy-resolver stub; we cannot tell at compile-time if this will be done (since the indirection can be the result of adding

Re: [pushed] Darwin : Adjust darwin_binds_local_p for PIC code [PR100152].

2021-04-24 Thread Iain Sandoe
Iain Sandoe wrote: gcc/ChangeLog: PR target/100152 * config/darwin.c (darwin_binds_local_p): Assume that any public symbol might be interposed for PIC code. Update function header comment to reflect current Darwin capability. unfortunately, wider testing

[pushed] Darwin: Define a suitable section name for CTF [PR101283]

2021-07-01 Thread Iain Sandoe
Hi, This is a placeholder name ahead of any CTF implementation on LLVM (which sets Darwin ABI). Ideally, we would get agreement on this choice (or any replacement) before GCC12 is shipped. tested on Darwin18, pushed to master, thanks, Iain PR debug/101283 - Several tests fail on Darwin with -gc

Re: Support C2x [[]] attributes for C

2019-11-16 Thread Iain Sandoe
In this instance, I propose to expect the error for Darwin as per the patch below, but open to other suggestions, if you prefer something different. OK / something else? thanks Iain gcc/testsuite/ChangeLog: 2019-11-16 Iain Sandoe * gcc.dg/gnu2x-attrs-1.c: Expect the alias case t

[C++ coroutines 0/6] Implement C++ coroutines.

2019-11-17 Thread Iain Sandoe
This patch series is an initial implementation of a coroutine feature, expected to be standardised in C++20. Standardisation status (and potential impact on this implementation): -- The facility was accepted into the working draft for C++20 by WG21 in February 2019. During

[C++ coroutines 1/6] Common code and base definitions.

2019-11-17 Thread Iain Sandoe
This part of the patch series provides the gating flag, the keywords, cpp defines etc. gcc/ChangeLog: 2019-11-17 Iain Sandoe * doc/invoke.texi: Document the fcoroutines command line switch. gcc/c-family/ChangeLog: 2019-11-17 Iain Sandoe * c-common.c (co_await

[C++ coroutines 2/6] Define builtins and internal functions.

2019-11-17 Thread Iain Sandoe
This part of the patch series provides the builtin functions used by the standard library code and the internal functions used to implement lowering of the coroutine state machine. gcc/ChangeLog: 2019-11-17 Iain Sandoe * builtin-types.def (BT_FN_BOOL_PTR): New

[C++ coroutines 3/6] Front end parsing and transforms.

2019-11-17 Thread Iain Sandoe
uivalents. The complete bodies for the ramp, actor and destroy function are passed back to finish_function for folding and gimplification. gcc/cp/ChangeLog: 2019-11-17 Iain Sandoe * Make-lang.in: Add coroutines.o. * call.c (add_builtin_candidates): Handle CO_AWAIT_EXPR.

[C++ coroutines 4/6] Middle end expanders and transforms.

2019-11-17 Thread Iain Sandoe
. Once we have remade the connections to their correct postions, we elide the labels that the front end inserted. gcc/ChangeLog: 2019-11-17 Iain Sandoe * Makefile.in: Add coroutine-passes.o. * coroutine-passes.cc: New file. * passes.def: Add pass_coroutine_lower_builtins

[C++ coroutines 5/6] Standard library header.

2019-11-17 Thread Iain Sandoe
this stage we have the content in an inline namespace "n4835" for the current CD. libstdc++-v3/ChangeLog: 2019-11-17 Iain Sandoe * include/Makefile.am: Add coroutine to the experimental set. * include/Makefile.in: Regnerated. * include/experimental/coroutine

<    4   5   6   7   8   9   10   11   12   13   >