Comment: | runtime: Remove duplicate structs for ABI |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
c6d2de43122566d44477dabdc9c772e9 |
User & Date: | js on 2019-11-24 22:23:10 |
Other Links: | manifest | tags |
2019-11-24
| ||
22:42 | Fix a memory leak check-in: 7ed1bdc642 user: js tags: trunk | |
22:23 | runtime: Remove duplicate structs for ABI check-in: c6d2de4312 user: js tags: trunk | |
20:54 | Minor style fix check-in: f90224870e user: js tags: trunk | |
Modified src/OFBlock.m from [acebb38475] to [814d0106d2].
︙ | |||
67 68 69 70 71 72 73 | 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 | - - - + + + - - - + + + + - - - + + + - - - + + + + - - - + + + - - - + + + + - + - - + + | @protocol RetainRelease - (instancetype)retain; - (void)release; @end #ifdef OF_OBJFW_RUNTIME /* Begin of ObjC module */ |
︙ |
Modified src/block.h from [e2b05adf4f] to [e8b856e116].
︙ | |||
46 47 48 49 50 51 52 | 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | - - + + | # if defined(OF_WINDOWS) && \ (defined(OF_NO_SHARED) || defined(OF_COMPILING_OBJFW)) /* * Clang has implicit declarations for these, but they are dllimport. When * compiling ObjFW itself or using it as a static library, these need to be * dllexport. Interestingly, this still works when using it as a shared library. */ |
︙ |
Modified src/runtime/ObjFWRT.h from [7fa4aef07e] to [48a67ef497].
︙ | |||
57 58 59 60 61 62 63 | 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | - + | #define nil (id _Null_unspecified)0 #define YES true #define NO false typedef struct objc_class *Class; typedef struct objc_object *id; typedef const struct objc_selector *SEL; |
︙ | |||
267 268 269 270 271 272 273 | 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 | + - + | /* * Used by the compiler, but can also be called manually. * * These declarations are also required to prevent Clang's implicit * declarations which include __declspec(dllimport) on Windows. */ struct objc_module; |
︙ |
Modified src/runtime/amiga-glue.m from [91f4bad4cf] to [53f74ff653].
︙ | |||
51 52 53 54 55 56 57 | 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | - + - + | M68K_ARG(FILE *, stdout_, a1) M68K_ARG(FILE *, stderr_, a2) return objc_init(version, libc, stdout_, stderr_); } void __saveds |
︙ |
Modified src/runtime/amigaos3.sfd from [af633e4379] to [dd36c99661].
1 2 3 4 5 6 7 8 9 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | - + | ==base _ObjFWRTBase ==basetype struct Library * ==libname objfwrt68k.library ==bias 30 ==public * Functions that are only for the linklib. bool glue_objc_init(unsigned int version, struct objc_libc *libc, FILE *stdout, FILE *stderr)(d0,a0,a1,a2) * These have a built-in declaration in the compiler that does not use the * registers and thus always need glue. |
︙ |
Modified src/runtime/category.m from [5c4513a7b1] to [3c4cc24bfa].
︙ | |||
23 24 25 26 27 28 29 | 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 | - + - - + + + + - - - + + - - + - - - + + - - + - + - + - + - + - + - - + - - + + | #import "ObjFWRT.h" #import "private.h" static struct objc_hashtable *categoriesMap = NULL; static void |
︙ |
Modified src/runtime/class.m from [d1f09c48dd] to [f4d6489e81].
︙ | |||
30 31 32 33 34 35 36 | 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | - + - + - - + + - + | static Class *loadQueue = NULL; static size_t loadQueueCount = 0; static struct objc_dtable *emptyDTable = NULL; static unsigned lookupsUntilFastPath = 128; static struct objc_sparsearray *fastPath = NULL; static void |
︙ | |||
67 68 69 70 71 72 73 | 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 | - + - + + - + - - - + + - | objc_global_mutex_unlock(); return YES; } static void |
︙ | |||
288 289 290 291 292 293 294 | 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 | - + | setupClass(Class class) { const char *superclassName; if (class->info & OBJC_CLASS_INFO_SETUP) return; |
︙ | |||
413 414 415 416 417 418 419 | 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 | - + - - + - - - + + + | if (loadQueue == NULL) OBJC_ERROR("Not enough memory for load queue!"); } } } void |
︙ | |||
488 489 490 491 492 493 494 | 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 | - + | } void objc_registerClassPair(Class class) { objc_global_mutex_lock(); |
︙ | |||
861 862 863 864 865 866 867 | 859 860 861 862 863 864 865 866 867 868 869 870 871 872 | - - | { return class_getName(object_getClass(object)); } static void unregisterClass(Class class) { |
︙ | |||
898 899 900 901 902 903 904 | 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 | - + | if (class->DTable != NULL && class->DTable != emptyDTable) objc_dtable_free(class->DTable); class->DTable = NULL; if ((class->info & OBJC_CLASS_INFO_SETUP) && class->superclass != Nil) |
︙ |
Modified src/runtime/init.m from [8f157610ad] to [b72034f7da].
︙ | |||
17 18 19 20 21 22 23 | 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | - + - - | #include "config.h" #import "ObjFWRT.h" #import "private.h" void |
︙ |
Modified src/runtime/linklib/linklib.m from [97d16c1155] to [701acb1f6d].
︙ | |||
136 137 138 139 140 141 142 | 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 | - + | DESTRUCTOR_P(ObjFWRT, 4000) { dtor(); } #endif void |
︙ |
Modified src/runtime/morphos-clib.h from [d7678b7243] to [4d1d4f1cae].
1 2 3 | 1 2 3 4 5 6 7 8 9 10 11 | - + | /* Functions that are only for the linklib. */ bool glue_objc_init(unsigned int, struct objc_libc *, FILE *, FILE *); /* All other functions. */ |
︙ |
Modified src/runtime/private.h from [182926c01c] to [dd3eb1cd1b].
︙ | |||
25 26 27 28 29 30 31 | 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + | # define _Nonnull # endif # ifndef _Nullable # define _Nullable # endif #endif |
︙ | |||
181 182 183 184 185 186 187 | 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 | - + - + - - + + - + | type name = reg_##name; # endif # undef stdout # undef stderr extern FILE *stdout, *stderr; #endif |
︙ |
Modified src/runtime/selector.m from [99b2d0f965] to [b2795ffb4b].
︙ | |||
37 38 39 40 41 42 43 | 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 | - + - + - - - + + + - + - - + - + - + - + - + - + - - + + - + - + - + - + - + - - + | static struct objc_hashtable *selectors = NULL; static uint32_t selectorsCount = 0; static struct objc_sparsearray *selectorNames = NULL; static void **freeList = NULL; static size_t freeListCount = 0; void |
︙ |
Modified src/runtime/static-instances.m from [8c2bdd3f07] to [331920028d].
︙ | |||
19 20 21 22 23 24 25 | 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | - + - + - + | #include <stdio.h> #include <stdlib.h> #import "ObjFWRT.h" #import "private.h" |
︙ | |||
49 50 51 52 53 54 55 | 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 | - + - + - + | break; } staticInstancesList[i] = staticInstancesList[staticInstancesCount]; staticInstancesList = realloc(staticInstancesList, |
︙ |
Modified tests/OFBlockTests.m from [6e73d74cf4] to [a74daa9112].
︙ | |||
17 18 19 20 21 22 23 | 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | - - - + + + | #include "config.h" #import "TestsAppDelegate.h" static OFString *module = @"OFBlock"; |
︙ |