xamarin-macios/runtime
Rolf Bjarne Kvinge e5d601c8a5 [runtime] Remove unused return value from the *_connect_* debug functions. (#1719)
At the beginning of dawn, not long after the big bang, we used to vibrate the
phone if there was a problem when connecting to the debugger in the IDE, and
the number of times the phone vibrated indicated a certain error condition.

This innovative debugging technique was at some point replaced with more
intuitive (albeit less innovative) error reporting, however the *_connect_*
family of functions continued returning the number of times the phone should
vibrate, even if the caller was now soundlessly ignoring this information.

After many years someone had the wonderful idea of running a static analyzer
on the code, and now the unused return value is not so silent anymore:

    monotouch-debug.m:663:5: warning: Value stored to 'rv' is never read
                                    rv = monotouch_connect_usb ();
                                    ^    ~~~~~~~~~~~~~~~~~~~~~~~~
    monotouch-debug.m:665:5: warning: Value stored to 'rv' is never read
                                    rv = monotouch_connect_wifi (hosts);
                                    ^    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    monotouch-debug.m:667:5: warning: Value stored to 'rv' is never read
                                    rv = xamarin_connect_http (hosts);
                                    ^    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~

So fix the warning by removing the return value.
2017-02-20 19:30:09 +01:00
..
xamarin [runtime] Make sure to always dispose objects that should be disposed, even if things go wrong. (#1725) 2017-02-20 19:29:56 +01:00
.gitignore [mtouch/runtime] Implement support for tvOS extensions. 2016-04-25 18:15:02 -04:00
COOP.md Initial review pass for COOP for watchOS. 2016-05-26 17:47:10 +02:00
Delegates.cs.t4 [ObjCRuntime] Store a pointer to the initialization options in managed memory. (#1076) 2016-11-01 12:40:51 +01:00
EXCEPTIONS.md [runtime] Improve documentation about exceptions a little bit. 2016-06-08 20:11:07 +02:00
Makefile Use @rpath instead of @executable_path in dylibs. (#1552) 2017-01-24 20:24:32 +01:00
README.md Initial review pass for COOP for watchOS. 2016-05-26 17:47:10 +02:00
bindings-generator.cs merge xcode8.2 into master 2016-12-12 21:26:23 -05:00
bindings-generator.csproj Build our runtime. 2016-04-24 14:47:24 -04:00
bindings.h [GameplayKit] Update from Xcode8 Beta 1 to Beta 6 (#689) 2016-08-30 15:32:46 -04:00
bindings.m [runtime] Use xamarin_process_nsexception instead of xamarin_throw_ns_exception in our generated bindings. (#84) 2016-05-26 13:36:56 +02:00
delegates.h.t4 Build our runtime. 2016-04-24 14:47:24 -04:00
delegates.inc.t4 Build our runtime. 2016-04-24 14:47:24 -04:00
delegates.t4 [registrar] Use metadata tokens instead of strings to find types and methods. (#1085) 2016-11-01 14:34:56 -04:00
exports.t4 [runtime] Fix signature for mono_thread_detach_if_exiting. (#1217) 2016-11-18 20:42:31 +01:00
extension-main.m [mtouch/runtime] Implement support for tvOS extensions. 2016-04-25 18:15:02 -04:00
launcher.h Build our runtime. 2016-04-24 14:47:24 -04:00
launcher.m [XM] Add hybrid/standard AOT option and improve AOT code (#1650) 2017-02-08 13:40:48 -06:00
libmonotouch.csproj Implement support for exception marshalling. 2016-05-17 11:23:48 +02: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] Catch and process managed exceptions that are thrown in reverse P/Invoke (delegate) callbacks. 2016-06-08 20:05:54 +02:00
mono-runtime.m.t4 [runtime] Use printf on watchOS, NSLog doesn't shown up (by default) (#772) 2016-09-06 16:55:23 -04:00
monotouch-debug.h [runtime] Only enable debugging on watchOS devices if a native debugger is also attached. 2016-09-05 10:05:00 +02:00
monotouch-debug.m [runtime] Remove unused return value from the *_connect_* debug functions. (#1719) 2017-02-20 19:30:09 +01:00
monotouch-main.m [runtime] Use safer versions of strncpy/strncat/strcat. (#1434) 2017-01-04 18:10:47 +01:00
monotouch-support.h [runtime] Add dummy _stret symbols for iOS/ARM64 (#66) 2016-05-18 16:51:45 -04:00
nsstring-localization.m Build our runtime. 2016-04-24 14:47:24 -04:00
product.h Build our runtime. 2016-04-24 14:47:24 -04:00
runtime-internal.h [runtime] Use printf on watchOS, NSLog doesn't shown up (by default) (#772) 2016-09-06 16:55:23 -04:00
runtime.m [runtime] Make sure to always dispose objects that should be disposed, even if things go wrong. (#1725) 2017-02-20 19:29:56 +01:00
shared.h Share the same block descriptors between copies of a block. Fixes #43592. (#683) 2016-08-26 19:22:38 +02:00
shared.m Share the same block descriptors between copies of a block. Fixes #43592. (#683) 2016-08-26 19:22:38 +02:00
slinked-list.h Build our runtime. 2016-04-24 14:47:24 -04:00
trampolines-i386-asm.s [runtime] Make the existing trampolines exception-aware. 2016-05-17 11:20:26 +02: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 Build our runtime. 2016-04-24 14:47:24 -04:00
trampolines-i386.m [runtime] Make the clang's static analyzer happy. (#1722) 2017-02-20 17:20:13 +01:00
trampolines-internal.h [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
trampolines-invoke.m [runtime] Make sure to always dispose objects that should be disposed, even if things go wrong. (#1725) 2017-02-20 19:29:56 +01:00
trampolines-varargs.h Build our runtime. 2016-04-24 14:47:24 -04:00
trampolines-varargs.m [runtime] Use printf on watchOS, NSLog doesn't shown up (by default) (#772) 2016-09-06 16:55:23 -04:00
trampolines-x86_64-asm.s [runtime] Make the existing trampolines exception-aware. 2016-05-17 11:20:26 +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 Build our runtime. 2016-04-24 14:47:24 -04:00
trampolines-x86_64.m [runtime] Make the clang's static analyzer happy. (#1722) 2017-02-20 17:20:13 +01:00
trampolines.m [runtime] Allocate memory correctly to make clang's static analyzer happy. (#1724) 2017-02-20 19:29:13 +01:00
xamarin-support.m [runtime] Fix an extraneous timezone release. (#1721) 2017-02-20 17:19:38 +01: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