Overview
Comment: | runtime/linklib: __attribute__((used)) for [cd]tor
Otherwise, amiga-gcc strips it when optimizations are enabled, resulting |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
c12ca9484e7cdcec4393a9916d0a000e |
User & Date: | js on 2020-03-08 13:49:49 |
Other Links: | manifest | tags |
Context
2020-03-09
| ||
00:54 | of_asprintf.m: Small optimization check-in: e0b659378f user: js tags: trunk | |
2020-03-08
| ||
13:49 | runtime/linklib: __attribute__((used)) for [cd]tor check-in: c12ca9484e user: js tags: trunk | |
2020-03-07
| ||
18:11 | .travis.yml: Add notifications check-in: e489612993 user: js tags: trunk | |
Changes
Modified src/runtime/linklib/linklib.m from [570378ad75] to [141357802d].
︙ | ︙ | |||
59 60 61 62 63 64 65 | #endif extern void __register_frame_info(const void *, void *); extern void *__deregister_frame_info(const void *); struct Library *ObjFWRTBase; void *__objc_class_name_Protocol; | | | 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | #endif extern void __register_frame_info(const void *, void *); extern void *__deregister_frame_info(const void *); struct Library *ObjFWRTBase; void *__objc_class_name_Protocol; static void __attribute__((__used__)) ctor(void) { static bool initialized = false; struct objc_libc libc = { .malloc = malloc, .calloc = calloc, .realloc = realloc, |
︙ | ︙ | |||
112 113 114 115 116 117 118 | fputs("Failed to initialize " OBJFWRT_AMIGA_LIB "!\n", stderr); abort(); } initialized = true; } | | | 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 | fputs("Failed to initialize " OBJFWRT_AMIGA_LIB "!\n", stderr); abort(); } initialized = true; } static void __attribute__((__used__)) dtor(void) { CloseLibrary(ObjFWRTBase); } #if defined(OF_AMIGAOS_M68K) ADD2INIT(ctor, -2); |
︙ | ︙ |