xamarin-macios/runtime
Manuel de la Pena 2e5b64893f
[Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353)
* [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings.

We want to enable the -Wconversion but that will raise too many warning
for a single commit. We are enabiling one by one the flags included in
-Wconversion so that we have smaller diffs.

-Wshorten-64-to-32 adds warnings when there is a implicit conversion that
loses integer precision. We are moving all the 32 to 64 conversions to
use 64. Expecially since most of the code changed is related with sizes,
legths and params counts that are never going to be negative.


Co-Authored-By: Rolf Bjarne Kvinge <rolf@xamarin.com>
2019-11-05 11:00:14 -05:00
..
xamarin [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
.gitignore Implement notarization. (#6928) 2019-09-09 00:34:11 -07:00
COOP.md [coop runtime] add a GC transition and relax some GC related assertions (#7036) 2019-09-23 22:08:25 +02:00
Delegates.cs.t4 [runtime] Mark managed callback functions if they're only used in the dynamic registrar. 2018-02-15 10:18:32 +01:00
EXCEPTIONS.md [runtime] Improve documentation about exceptions a little bit. 2016-06-08 20:11:07 +02:00
Makefile [runtime] Split the build differently: build libraries for simulator and device separately. (#7143) 2019-10-03 16:38:44 +02:00
README.md Initial review pass for COOP for watchOS. 2016-05-26 17:47:10 +02:00
Xamarin.framework-iphoneos.Info.plist [runtime] Split the build differently: build libraries for simulator and device separately. (#7143) 2019-10-03 16:38:44 +02:00
Xamarin.framework-iphonesimulator.Info.plist [runtime] Split the build differently: build libraries for simulator and device separately. (#7143) 2019-10-03 16:38:44 +02:00
Xamarin.framework-tvos.Info.plist Rename bundle identifier for the frameworks we ship. Fixes #6920. (#6926) 2019-09-06 09:30:49 -07:00
Xamarin.framework-tvsimulator.Info.plist [runtime] Split the build differently: build libraries for simulator and device separately. (#7143) 2019-10-03 16:38:44 +02:00
Xamarin.framework-watchos.Info.plist Rename bundle identifier for the frameworks we ship. Fixes #6920. (#6926) 2019-09-06 09:30:49 -07:00
Xamarin.framework-watchsimulator.Info.plist [runtime] Split the build differently: build libraries for simulator and device separately. (#7143) 2019-10-03 16:38:44 +02:00
bindings-generator.cs [runtime] Ensure binding-generator full initialize NVector3[d] members (#7298) 2019-10-24 18:04:26 -04:00
bindings-generator.csproj Merge xcode9 into d15-4[-xi] (#2710) 2017-09-15 17:53:16 -04:00
bindings.h [ModelIO] Implement new API introduced with Xcode 11 b1-7. (#6930) 2019-09-09 13:15:07 -07:00
bindings.m [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
delegates.h.t4 [runtime] Mark managed callback functions if they're only used in the dynamic registrar. 2018-02-15 10:18:32 +01:00
delegates.inc.t4 [runtime] Throw a managed exception instead of trying to call a null function pointer if the runtime tries to call a function that has been linked away. (#4770) 2018-09-10 10:56:02 +02:00
delegates.t4 [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
exports.t4 [runtime] Throw a OutOfMemoryException when processing parameters (#7308) 2019-10-25 15:49:22 -04:00
extension-main.m [runtime] Clean up public symbols. Fixes #5124. (#5155) 2018-11-21 11:48:15 -05:00
frameworks.h [registrar] Add support for the BindAs attribute. 2017-07-04 07:35:29 +02:00
launcher.h Build our runtime. 2016-04-24 14:47:24 -04:00
launcher.m [runtime] Free `env-argv` in `xamarin-main` (#7352) 2019-11-04 08:56:59 -05:00
libmonotouch.csproj Remove zlib-helper from runtime/ 2019-02-05 01:46:02 +01:00
libxammac.csproj [Mac] Add support for os x extensions (#83) 2016-05-25 17:20:33 -04:00
main-internal.h [Mac] Add support for os x extensions (#83) 2016-05-25 17:20:33 -04:00
mono-runtime.h.t4 [runtime] Use mono_array_setref instead of mono_array_set. (#5782) 2019-03-18 15:00:32 +01:00
mono-runtime.m.t4 [runtime] Clean up public symbols. Fixes #5124. (#5155) 2018-11-21 11:48:15 -05:00
monotouch-debug.h [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
monotouch-debug.m [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
monotouch-main.m [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
monotouch-support.h [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
nsstring-localization.m Build our runtime. 2016-04-24 14:47:24 -04:00
product.h [runtime] Remove some classic (pre-unified) code that is not used anymore. (#7341) 2019-10-30 20:54:30 -04:00
runtime-generated.h.t4 [runtime] Mark managed callback functions if they're only used in the dynamic registrar. 2018-02-15 10:18:32 +01:00
runtime-internal.h [runtime] Improve exception creation. (#5944) 2019-04-26 11:16:23 +02:00
runtime.m [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
shared.h [runtime] Use newer atomic functions. (#7119) 2019-09-27 07:15:59 +02:00
shared.m [runtime] Use newer atomic functions. (#7119) 2019-09-27 07:15:59 +02:00
slinked-list.h Build our runtime. 2016-04-24 14:47:24 -04:00
trampolines-arm64-asm.s [runtime] Implement support for an arm64 dynamic registrar. (#6005) 2019-05-07 07:35:39 +02:00
trampolines-arm64.h [runtime] Implement support for an arm64 dynamic registrar. (#6005) 2019-05-07 07:35:39 +02:00
trampolines-arm64.m [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
trampolines-i386-asm.s [runtime] Rename CallState to XamarinCallState to keep the public namespace cleaner. (#5940) 2019-04-23 16:53:35 +01:00
trampolines-i386-objc_msgSend-copyframe.inc [runtime] Don't store xmm registers where we store other registers. 2016-05-17 11:24:02 +02:00
trampolines-i386-objc_msgSend-post.inc [runtime] Make sure the stack is correctly aligned to 16 bytes. 2016-05-17 11:24:03 +02:00
trampolines-i386-objc_msgSend-pre.inc [runtime] Make sure the stack is correctly aligned to 16 bytes. 2016-05-17 11:24:03 +02:00
trampolines-i386-objc_msgSend.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-i386-objc_msgSendSuper.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-i386-objc_msgSendSuper_stret.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-i386-objc_msgSend_stret.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-i386.h [runtime] Rename CallState to XamarinCallState to keep the public namespace cleaner. (#5940) 2019-04-23 16:53:35 +01:00
trampolines-i386.m [runtime] Put LOGZ directive in a header to not duplicate it everywhere. (#6001) 2019-05-06 19:29:28 +02:00
trampolines-internal.h [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
trampolines-invoke.m [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
trampolines-varargs.h [runtime] Rename CallState to XamarinCallState to keep the public namespace cleaner. (#5940) 2019-04-23 16:53:35 +01:00
trampolines-varargs.m [runtime] Enable the varargs dynamic trampolines for arm64_32. 2019-05-10 08:28:43 +02:00
trampolines-x86_64-asm.s [runtime] Fix crash in the x86_64 dynamic registrar. (#5989) 2019-05-06 07:25:49 +02:00
trampolines-x86_64-objc_msgSend-copyframe.inc Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64-objc_msgSend-post.inc Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64-objc_msgSend-pre.inc Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64-objc_msgSend.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64-objc_msgSendSuper.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64-objc_msgSendSuper_stret.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64-objc_msgSend_stret.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64.h [runtime] Fix crash in the x86_64 dynamic registrar. (#5989) 2019-05-06 07:25:49 +02:00
trampolines-x86_64.m [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
trampolines.m [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00
xamarin-support.m [Runtime] Enable the -Wshorten-64-to-32 flag and fix all warnings. (#7353) 2019-11-05 11:00:14 -05:00

README.md

Native runtime

This directory contains the native runtime for Xamarin.iOS and Xamarin.Mac.

Cooperative GC

See COOP.md

Generated code

A few files are generated automatically:

delegates.h|inc, Delegates.cs

These files contain the code required to glue the native runtime and the managed runtime.

mono-runtime.m, xamarin/mono-runtime.h

These files contain code that makes other code, consumers of the mono runtime, oblivious to whether the mono runtime is linked statically, dynamically, or using dlopen at runtime.

If you need to use a new function from the Mono headers, add it to exports.t4.

If you need a new enum / constant / typedef / etc, add it to mono-runtime.h.t4.

Shipped headers

These are the headers shipped with XI/XM (they're not for public consumption, but we need them to build generated code on customers machine, in particular main.m and registrar.m)

xamarin/runtime.h xamarin/trampolines.h xamarin/main.h xamarin/xamarin.h