Граф коммитов

4380 Коммитов

Автор SHA1 Сообщение Дата
Rolf Bjarne Kvinge 0dd292f3d1
Bump maccore & macios-binaries to fix the documentation workflow. (#3571)
This should make the "test-docs" step on wrench pass again.

Commit list for xamarin/macios-binaries:

* xamarin/macios-binaries@e1e8bdf Add ios/compat version of core.dll and temp.dll from d15-5 for documentation workflow. (#7)
* xamarin/macios-binaries@e64e7ef Merge pull request #5 from timrisi/ClassicDocs
* xamarin/macios-binaries@3c92bb1 Remove .DS_Store files
* xamarin/macios-binaries@587623f Add classic docs

Diff: 93fb980b0e...e1e8bdf7a8

Commit list for xamarin/maccore:

* xamarin/maccore@1b5311781c [docs] Look for binary classic files in the right place. (#646)

Diff: 4872731c32...1b5311781c
2018-02-22 22:37:32 +01:00
Alex Soto d880b2a435
[MetalPerformanceShaders] Move xto output (#3562)
Unfortunatelly MPS API is considered experimental by apple at the moment
see https://github.com/xamarin/xamarin-macios/issues/3553
2018-02-22 13:35:05 -06:00
Chris Hamons 040461ba0a
Warn when building 32-bit macOS applications (#3564)
- https://github.com/xamarin/xamarin-macios/issues/3325
2018-02-22 12:47:28 -06:00
Vincent Dondain 3b56d5e780
[modelio] MDLVoxelArray should have a base type of MDLObject (fix xtro) (#3563)
Moving the base type to `MDLObject` wasn't a breaking change on macOS.
There is no reason for the ifdef and xtro reports the issue correctly.
2018-02-22 12:25:18 -05:00
Vincent Dondain 52ba26f7be
[arkit] Update to Xcode 9.3 beta 3 (#3565) 2018-02-22 12:11:35 -05:00
Chris Hamons 4ba4dfc813
Build with CSC instead of MCS (#3393)
- Improve error messages from install-source when crashing
2018-02-22 11:07:33 -06:00
Bernhard Urban 4cab7b2c75 Bump mono & Touch.Unit (#3560)
* Bump mono

Commit list for mono/mono:

* mono/mono@4adf8229e8 bump nunit-lite (#7139)
* mono/mono@de4729fae2 [mono-api-html] Expand "ignore" functionality (#7154)
* mono/mono@721462c4a1 [2017-12] [corlib] Fix RuntimeFeatureTest.NoNewFeaturesAdded on mobile (#7152)

Diff: 177997b063...4adf8229e8

* bump Touch.Unit

Commit list for spouliot/Touch.Unit:

* spouliot/Touch.Unit@4ac4e32 [TouchRunner] do not use FinallyDelegate in Runner, because it requires remoting API to be available (#49)

Diff: b5b227e80b...4ac4e32500
2018-02-22 11:58:17 -05:00
Vincent Dondain afd33cb33a
[metalkit] Add 'MTKTextureLoader' missing bindings (fix xtro) (#3561) 2018-02-21 17:45:05 -05:00
Rolf Bjarne Kvinge d0d6f4d0a2 [tests] Fix NSDataTest.Https to use a site with a valid and complete certificate chain. Fixes #644. (#3549) (#3559)
Fixes https://github.com/xamarin/maccore/issues/644.
2018-02-21 11:27:03 -05:00
Rolf Bjarne Kvinge 3f16223deb
[registrar] Fix resolving linked away generic types. Fixes #3523. (#3539)
* [registrar] Fix resolving linked away generic types. Fixes #3523.

Fixes #3523.

* [tests] Use a link all test instead of mtouch test.

It's much faster, since we're already building link all everywhere.

* [tests] Use the static registrar in all linkall simulator configurations.
2018-02-21 13:36:02 +01:00
Rolf Bjarne Kvinge c0c0e63a3b
[mtouch] Find the link context for code shared app extensions in the static registrar. Fixes #3514. (#3545)
When code sharing is enabled, only the container app/target will have a
LinkContext.

So make sure the static registrar finds that link context when it needs
information from the linker.

https://github.com/xamarin/xamarin-macios/issues/3514
2018-02-21 09:27:26 +01:00
Rolf Bjarne Kvinge f7d907983e
[tests] Fix NSDataTest.Https to use a site with a valid and complete certificate chain. Fixes #644. (#3549)
Fixes https://github.com/xamarin/maccore/issues/644.
2018-02-21 09:09:12 +01:00
Alex Soto ce05cbf9bf
[Appkit] Fix NSApplication.NextEvent signatures. (#3542)
* [Appkit] Fix NSApplication.NextEvent signature.

Fixes xamarin/xamarin-macios#3540
Fixes xamarin/xamarin-macios#3541

The following issues are addressed:

* The `expiration` parameter must allow `null`, it is documented as such.
* The `NSApplication.NextEvent` method now has a NSRunLoopMode overload.
* The `NSApplication.NextEvent` methods  where `mode` is a `string` are now
  deprecated in favour of the `[NSRunLoopMode|NSString]` overloads since
  passing a .NET `string` does not make sense due to pointer equality.

* Let's bring together the Obsoleted API's for easier review when XAMCORE_4_0 happpens.

* Fix Obsolete message.

* implement feedback
2018-02-21 00:57:58 -06:00
Rolf Bjarne Kvinge 4c53980502
[tests] Automatically rebuild 'test.config' if it can't be found. (#3527)
* [tests] Automatically rebuild 'test.config' if it can't be found.

This condition usually happens when I 'git clean -xfd' in tests/ and then want
to run tests from xharness.

The manual step is to run "make" in tests/, but it's better if we can do it automatically.

* [msbuild] Add file to fix build.
2018-02-21 07:37:34 +01:00
Sebastien Pouliot 43a4bd8d20
[tests] Fix NoFatCorlib to succeed when compiling a Xamarin.Sdk.framework (#3552)
A different location is needed when we build the SDK as a framework
and our bots (that test on devices) are running this configuration
2018-02-20 22:04:34 -05:00
Vincent Dondain 29f99ceac7 Bump Xcode to 9.3 beta 3 (#3554) 2018-02-20 21:58:56 -05:00
Rolf Bjarne Kvinge 83509221e1
[tests] Update tests according to temporary directory name change. (#3548) 2018-02-20 17:59:14 +01:00
Vincent Dondain 51b3c0aaec
[healthkit] Fix typos in 'HKInsulinDeliveryReason' and 'HKBloodGlucoseMealTime' (#3503)
- Fixes https://github.com/xamarin/xamarin-macios/issues/3499
(HKBloodGlucoseMealTime misspellings in bindings)
- 'HKInsulinDeliveryReason' [doc](https://developer.apple.com/documentation/healthkit/hkinsulindeliveryreason?language=objc)
- 'HKBloodGlucoseMealTime' [doc](https://developer.apple.com/documentation/healthkit/hkbloodglucosemealtime?language=objc)
- Commented ApiTypoTest.
2018-02-20 11:57:59 -05:00
Rolf Bjarne Kvinge 43489a203e
[xharness] Fix 'MtouchExtraArgs' casing. Fixes #3516. (#3546)
https://github.com/xamarin/xamarin-macios/issues/3516
2018-02-20 17:41:51 +01:00
Manuel de la Pena e9798ce671
[Tests] Change the guid of the test project to allow to use VS. (#3538) 2018-02-20 16:22:23 +01:00
Sebastien Pouliot 2a964030a8
[linker] Take extra care to avoid 32/64 bits specific mscorlib.dll (#3532)
We want to avoid separate `mscorlib.dll` assemblies for 32/64 bits so
the  architecture specific code for `n[u]int` and `nfloat` must be
preserved in both cases.

Because a single, slightly larger, assembly is much smaller than two
(slightly smaller) ones.

This is not a common situation since the extraneous preserved API are
often used in the application (or 3rd party code) so, in most cases,
a single `mscorlib.dll` was already used.

This merely close the gap for some cases, like our `link all` application
where this happened.
2018-02-19 19:16:17 -05:00
Sebastien Pouliot dea72218b1
Bump mono to head of 2017-12 (#3535)
Commit list for mono/mono:

* mono/mono@177997b063 [sdks] Fix for XA integration (#7108)
* mono/mono@c8845164ad Merge more SDK changes from mono master. (#7090)
* mono/mono@ac87945049 Revert "Merge more SDK changes from mono master." (#7106)
* mono/mono@5ef368bb1e [sdks] Fix for XA integration (#7092)
* mono/mono@c67ec40879 Merge more SDK changes from mono master. (#7090)
* mono/mono@fd1fd05f18 * Generalize commit 0c6932a985175a5cf0cbc59ffd3af4abf3db248e to support LDARG{0|1|2|3}, LDLOC{0|1|2|3}, LDARGS, LDLOCS, LDARG and LDLOC instead of LDLOC and LDLOCS. Improves generated code similar to issue #60945 (#7062)
* mono/mono@936f7841d7 [ci] Disable monodoc tests on Windows for now
* mono/mono@9a2f778a91 [coop] Disable failing tests on PR (#6472)
* mono/mono@96eee2f901 Disable some PngCodecTest that have trouble on CI right now
* mono/mono@28e047fd35 [debugger] disable StepOutAsync test because it's flaky
* mono/mono@0d51a8063b [sdks] Backport changes from master (#7084)
* mono/mono@b232a3929b Bump aot file format version because of 7cac757e60cd61aa070f7e0fffca225364f58c0c. (#7083)

Diff: fbc4f0546d...177997b063

https://bugzilla.xamarin.com/show_bug.cgi?id=60945
2018-02-19 17:01:17 -05:00
Rolf Bjarne Kvinge 5788a9fa9b
[mtouch] Rename temporary directories so the order assemblies move is clearer. (#3531)
* [mtouch] Rename temporary directories so the order assemblies move is clearer.

I implemented this myself, but I can never remember in which order assemblies
go from one directory to another during the build.

So number these temporary directories, so that even the most forgetful minds
can understand without having to remember anything.

* [tests] Update test according to temporary directory name change.
2018-02-19 21:50:20 +01:00
Rolf Bjarne Kvinge 3113c5d2b5
[mtouch/mmp] Fix tracking of whether the static registrar should run again or not. Fixes #641. (#3534)
* [tests] Improve debug spew for the RebuildTest_WithExtensions test.

* [mtouch/mmp] Store/load if the dynamic registrar is removed or not into the cached link results.

Store/load if the dynamic registrar is removed or not into the cached link
results, so that we generate the correct main.m even if cached linker results
are used.

* [mtouch/mmp] The static registrar must not execute if we're loading cached results from the linker.

The static registrar must not execute if we're loading cached results from the
linker, because the static registrar needs information from the linker that's
not restored from the cache.

* [mtouch/mmp] Share Touch code.

* [mtouch/mmp] Make it possible to touch inexistent files (to create them).

* [mtouch/mmp] Fix tracking of whether the static registrar should run again or not.

The recent changes to support optimizing away the dynamic registrar caused the
Xamarin.MTouch.RebuildTest_WithExtensions test to regress.

The problem
-----------

* The linker now collects and stores information the static registrar needs.
* This information is not restored from disk when the linker realizes that it
  can reload previously linked assemblies instead of executing again.
* The static registrar runs again (for another reason).
* The information the static registrar needs isn't available, and incorrect
  output follows.

So fix 1: show an error if the static registrar runs when the linker loaded
cached results.

The exact scenario the test ran into is this:

* 1st build: everything is new and everything is built.
* 2nd build: contents of .exe changes, the linker runs again, the static
  registrar runs again, but sees that the generated output didn't change, so
  it doesn't write the new content to disk (this is an optimization to avoid
  compiling the registrar.m file again unless needed).
* 3rd build: only the .exe timestamp changes, the linker sees nothing changes
  in the contents of the .exe and loads the previously linked assemblies from
  disk, the static registrar sees that the .exe's timestamp is newer than
  registrar.m's timestamp and run again, but doesn't produce the right result
  because it doesn't have the information it needs.

Considered solutions
--------------------

1. Only track timestamps, not file contents. This is not ideal, since it will
   result in more work done: in particular for the case above, it would add a
   registrar.m compilation in build #2, and linker rerun + static registrar
   rerun + registrar.m compilation + final native link in build #3.
2. Always write the output of the static registrar, even if it hasn't changed.
   This is not ideal either, since it will also result in more work done: for
   the case above, it would add a registrar.m compilation + final native link
   in build #3.
3. Always write the output of the static registrar, but track if it changed or
   not, and if it didn't, just touch registrar.o instead of recompiling it.
   This only means the final native link in build #3 is added (see #5 for why
   this is worse than it sounds).
4. Always write the output of the static registrar, but track it it changed or
   not, and if it didn't, just touch registrar.o instead of recompiling it,
   and track that too, so that the final native link in build #3 isn't needed
   anymore. Unfortunately this may result in incorrect behavior, because now
   the msbuild tasks will detect that the executable has changed, and may run
   dsymutil + strip again. The executable didn't actually change, which means
   it would be the previously stripped executable, and thus we'd end up with
   an empty .dSYM because we ran dsymtil on an already stripped executable.
5. Idea #4, but write the output of the final link into a temporary directory
   instead of the .app, so that we could track whether we should update the
   executable in the .app or not. This is not optimal either, because
   executables can be *big* (I've seen multi-GB tvOS bitcode executables), and
   extra copies of such files should not be taken lightly.
6. Idea #4, but tell the MSBuild tasks that dsymutil/strip doesn't need to be
   rerun even if the timestamp of the executable changed. This might actually
   work, but now the solution's become quite complex.

Implemented solution
--------------------

Use stamp files to detect whether a file is up-to-date or not.

In particular:

* When we don't write to a file because the new contents are identical to the
  old contents, we now touch a .stamp file. This stamp file means "the
  accompanying file was determined to be up-to-date when the stamp was
  touched."
* When checking whether a file is up-to-date, also check for the presence of a
  .stamp file, and if it exists, use the highest timestamp between the stamp
  file and the actual file.

Now the test scenario becomes:

* 1st build: everything is new and everything is built.
* 2nd build: contents of .exe changes, the linker runs again, the static
  registrar runs again, but sees that the generated output didn't change, so
  it doesn't write the new content to disk, but it creates a registrar.m.stamp
  file to indicate the point in time when registrar.m was considered up-to-
  date.
* 3rd build: only the .exe timestamp changes, the linker sees nothing changes
  in the contents of the .exe and loads the previously linked assemblies from
  disk, the static registrar sees that the .exe's timestamp is *older* than
  registrar.m.stamp's timestamp and doesn't run again.

We only use the stamp file for source code (registrar.[m|h], main.[m|h],
pinvokes.[m|h]), since using it every time has too much potential for running
into other problems (for instance we should never create .stamp files inside
the .app).

Fixes these test failures:

    1) Failed : Xamarin.MTouch.RebuildTest_WithExtensions("single","",False,System.String[])
      single
      Expected: <empty>
      But was:  < "/Users/builder/data/lanes/5746/4123bf7e/source/xamarin-macios/tests/mtouch/bin/Debug/tmp-test-dir/Xamarin.Tests.BundlerTool.CreateTemporaryDirectory371/testApp.app/testApp is modified, timestamp: 2/15/2018 3:04:11 PM > 2/15/2018 3:04:09 PM" >

    2) Failed : Xamarin.MTouch.RebuildTest_WithExtensions("dual","armv7,arm64",False,System.String[])
      dual
      Expected: <empty>
      But was:  < "/Users/builder/data/lanes/5746/4123bf7e/source/xamarin-macios/tests/mtouch/bin/Debug/tmp-test-dir/Xamarin.Tests.BundlerTool.CreateTemporaryDirectory375/testApp.app/testApp is modified, timestamp: 2/15/2018 3:06:03 PM > 2/15/2018 3:06:00 PM" >

    3) Failed : Xamarin.MTouch.RebuildTest_WithExtensions("llvm","armv7+llvm",False,System.String[])
      llvm
      Expected: <empty>
      But was:  < "/Users/builder/data/lanes/5746/4123bf7e/source/xamarin-macios/tests/mtouch/bin/Debug/tmp-test-dir/Xamarin.Tests.BundlerTool.CreateTemporaryDirectory379/testApp.app/testApp is modified, timestamp: 2/15/2018 3:07:14 PM > 2/15/2018 3:07:12 PM" >

    4) Failed : Xamarin.MTouch.RebuildTest_WithExtensions("debug","",True,System.String[])
      debug
      Expected: <empty>
      But was:  < "/Users/builder/data/lanes/5746/4123bf7e/source/xamarin-macios/tests/mtouch/bin/Debug/tmp-test-dir/Xamarin.Tests.BundlerTool.CreateTemporaryDirectory383/testApp.app/testApp is modified, timestamp: 2/15/2018 3:08:16 PM > 2/15/2018 3:08:13 PM" >

    5) Failed : Xamarin.MTouch.RebuildTest_WithExtensions("single-framework","",False,System.String[])
      single-framework
      Expected: <empty>
      But was:  < "/Users/builder/data/lanes/5746/4123bf7e/source/xamarin-macios/tests/mtouch/bin/Debug/tmp-test-dir/Xamarin.Tests.BundlerTool.CreateTemporaryDirectory387/testApp.app/testApp is modified, timestamp: 2/15/2018 3:09:18 PM > 2/15/2018 3:09:16 PM" >

Fixes https://github.com/xamarin/maccore/issues/641
2018-02-19 20:28:04 +01:00
Rolf Bjarne Kvinge 6d88e01b5e
[linker] Find linked away interfaces when resolving removed interfaces. Fixes #3513. (#3515)
The linker might remove interfaces that have already been linked away. Make
sure to look for the TypeDefinition for such interfaces among the types that
have already been linked away.

Fixes https://github.com/xamarin/xamarin-macios/issues/3513.
2018-02-19 11:36:38 +01:00
Matt Sylvia 96085adb66 Bump XI XM version numbers (#3519) 2018-02-16 15:33:23 -05:00
Alex Soto d304407e78
[Intents] Fix xtro output (#3512) 2018-02-16 12:46:01 -06:00
Alex Soto 273824b3d7
[FinderSync] Fix xtro output (#3511)
This depends on https://github.com/xamarin/xamarin-macios/pull/2315
2018-02-16 11:48:11 -06:00
Rolf Bjarne Kvinge 75fa7b8e78
Bump the VSfM dependency to the latest d15-6 preview. (#3510)
It seems the d15-5 version of VSfM has a non-optimal startup path, where
launching vstool takes almost 4 minutes on the bots, making it difficult to
build & run tests within the allotted time for those tests:

    $ time /Applications/Visual\ Studio.app/Contents/MacOS/vstool help
    [...]
    real	3m30.172s

So bump to the latest d15-6 preview (which takes _only_ 12 seconds to launch
on my machine), hoping it will be enough to make tests build on the bots.
2018-02-16 17:42:44 +01:00
Manuel de la Pena 688b3020f9
[Foundation] Add missing NSLinguisticAnalysis category. Fixes 35009. (#3473)
* [Foundation] Add missing NSLinguisticAnalysis category. Fixes 35009.
2018-02-16 16:21:47 +01:00
Alex Soto 4cd3f5c2d9
[ImageKit] Fix xtro output (#3509) 2018-02-16 07:45:50 -06:00
Alex Soto 78650fb550
[CoreAudioKit] Fix macOS xtro output (#3508)
* [CoreAudioKit] Fix macOS xtro output

* Fix Midi typo

* Add trailing comma to enum value
2018-02-16 05:49:05 -06:00
Zoltan Varga 7c88610112 Remove the tvos cross compiler, use the normal ios cross compiler instead, they are the same. (#3492) 2018-02-16 10:45:22 +01:00
Alex Soto 45a8a0420d
[GLKit] Fixes macOS xtro output (#3507) 2018-02-15 22:40:18 -06:00
Alex Soto c03d3b158e
[Security] Fixes CS0162: Unreachable code detected in Certificate.cs (#3506)
Our build correctly issues

	Security/Certificate.cs(556,4): warning CS0162: Unreachable code detected
2018-02-15 21:57:25 -06:00
Alex Soto 6e324d37f9
[GameController] Fixes macOS xtro output (#3505) 2018-02-15 21:56:51 -06:00
Alex Soto 4ddc2dcfed
[CoreLocation] Fix macOS xtro output (#3504) 2018-02-15 20:58:40 -06:00
Sebastien Pouliot b170a4ec1a
Bump mono to head of 2017-12 (#3501)
Commit list for mono/mono:

* mono/mono@fbc4f0546d Bump to cecil:mono-2017-12

Diff: d0c1e9d32b...fbc4f0546d
2018-02-15 21:54:52 -05:00
Rolf Bjarne Kvinge c838a11c4d
Merge pull request #3495 (Implement support for optimizing away the dynamic registrar) from rolfbjarne/full-static-registrar
Implement support for optimizing away the dynamic registrar.

* Add a new property (Runtime.DynamicRegistrationSupported) that indicates at
  runtime whether dynamic registration is available.

* Check this new property whenever we need dynamic registration.

* Add an optimization to mtouch/mmp that detects whether dynamic registration
  is required, and if not, changes Runtime.DynamicRegistrationSupported to
  return false.

* Add an optimization to mtouch/mmp that inlines
  Runtime.DynamicRegistrationSupported as a constant value.

The end result is that the linker will link away the dynamic registrar if
mtouch/mmp detects that it's not needed.

Benchmark
---------

I've compared the size of entire apps built for device:

|test                          | Before |  After |   Diff |     % |
|:-----------------------------|-------:|-------:|-------:|------:|
|[monotouch-test/Release][1]   | 95.7mb | 95.0mb | -680kb | -0.7% |
|[link sdk/Release][2]         | 21.2mb | 20.9mb | -245kb | -1.2% |
|[minimalistic app/Release][3] | 4.58mb | 4.32mb | -259kb | -5.7% |

[1]: https://gist.github.com/rolfbjarne/3871e36d2de8db1a8eee1d9f9276d3d2#monotouch-test-release-wall-optimizations-enabled
[2]: https://gist.github.com/rolfbjarne/3871e36d2de8db1a8eee1d9f9276d3d2#link-sdk
[3]: https://gist.github.com/rolfbjarne/3871e36d2de8db1a8eee1d9f9276d3d2#minimalistic-app
2018-02-15 23:56:00 +01:00
Vincent Dondain 94ec17e875
[xamarin-analysis] Add XIA0007 to docs/website/xamarin-ios-analysis.md (#3498) 2018-02-15 14:14:35 -05:00
Sebastien Pouliot 013de9c441
Bump mono to head of 2017-12 (#3493)
* Bump mono to head of 2017-12

Commit list for mono/mono:

* mono/mono@f12e936ca3 [packaging] Remove FSharp patches that are no longer required
* mono/mono@3977339940 [packaging] Windows: remove FSharp.Core from GAC (#6345)
* mono/mono@cb15effa2f Emit the weak field indexes table using the MONO_AOT_TABLE code, so it works with separate aot data files/bitcode.
* mono/mono@2ad3f0bf9e Bug 60088 - Assertion at ../../../../external/mono/mono/mini/debugger-agent.c:4765, condition `array->len == 1' not met (#7004)
* mono/mono@899599b951 Bump nunitlite
* mono/mono@3da56339ec [2017-12] Update F# to 4.1.33 (#7020)
* mono/mono@a0af42ab18 [corlib] Pass null-terminated string for logging (#6954)
* mono/mono@aab818fbf3 Revert mkbundle defaulting behavior made in ca8b8bd346

Diff: 4b1745401d...f12e936ca3

* Bump again (to pickup nunit-lite revert) to head of 2017-12

    Commit list for mono/mono:
    
    * mono/mono@d0c1e9d32b Revert nunit-lite to earlier version
    * mono/mono@778a70ba01 Add denied assembly versions from previous ms extensions nugets
    * mono/mono@f83b8da83e Bump to cecil:master
    
    Diff: f12e936ca3...d0c1e9d32b
2018-02-15 13:43:52 -05:00
Alex Soto 47163efdb6
[Tests] Fixes CertificateTest for ios < 10 (#3500)
`SecKeyCopyAttributes` is iOS 10+ and is used by `GetAttributes`
2018-02-15 11:47:37 -06:00
Rolf Bjarne Kvinge 4123bf7ede Merge remote-tracking branch 'origin/master' into full-static-registrar 2018-02-15 17:45:41 +01:00
Vincent Dondain a93a5a10eb
[xtro-sharpie] Fix typo in xtro README
Extra '`'.
2018-02-15 11:45:24 -05:00
Rolf Bjarne Kvinge 1e6b294210 [documentation] Update according to review. 2018-02-15 17:45:03 +01:00
Rolf Bjarne Kvinge a2b49f4bb5 [tests] Fix expected warning message for optimize warning test. 2018-02-15 17:45:02 +01:00
Rolf Bjarne Kvinge 40d96bf79b [tests] Skip MX2107 test for XM. 2018-02-15 17:45:02 +01:00
Alex Soto 2608528866
[QuickLookUI] Fixes macOS xtro output (#3475) 2018-02-15 09:08:39 -06:00
Alex Soto 3f14eeea44
[GameKit] Fixes macOS xtro output (#3491) 2018-02-15 08:58:58 -06:00
Rolf Bjarne Kvinge fafd0fa151 [ObjCRuntime] BlockLiteral.GetBlockForDelegate must be optimizable because it calls Runtime.DynamicRegistrationSupported.
Fixes this test:

    Xamarin.ApiTest.ApiTest.AlwaysOptimizable(iOS) : All methods calling optimizable API must be optimizable
    	The method System.IntPtr ObjCRuntime.BlockLiteral::GetBlockForDelegate(System.Reflection.MethodInfo,System.Object,System.String) calls System.Boolean ObjCRuntime.Runtime::get_DynamicRegistrationSupported(), but it does not have a [BindingImpl (BindingImplOptions.Optimizable)] attribute.

Also skip the BlockLiteral.SetupBlock optimization for this method, because
it's not optimizable (and thus produces a warning users can't ignore).
2018-02-15 15:58:02 +01:00