self->synth = synth_alloc();
synth_init(self->synth, rate);
-
+#ifndef PLATFORM_WINDOWS // easter egg is for sane platforms with native support for localtime_r only
struct tm date;
time_t now;
time(&now);
printf("reasonable synth.lv2 says: happy holidays!\n");
self->xmas = true;
}
+#endif
return (LV2_Handle)self;
}
/* Process incoming MIDI events */
if (self->midiin) {
- LV2_Atom_Event const* ev = (LV2_Atom_Event const*)((&(self->midiin)->body) + 1); // lv2_atom_sequence_begin
+ LV2_Atom_Event const* ev = (LV2_Atom_Event const*)((uintptr_t)((&(self->midiin)->body) + 1)); // lv2_atom_sequence_begin
while( // !lv2_atom_sequence_is_end
(const uint8_t*)ev < ((const uint8_t*) &(self->midiin)->body + (self->midiin)->atom.size)
)
}
}
ev = (LV2_Atom_Event const*) // lv2_atom_sequence_next()
- ((const uint8_t*)ev + sizeof(LV2_Atom_Event) + ((ev->body.size + 7) & ~7));
+ ((uintptr_t)((const uint8_t*)ev + sizeof(LV2_Atom_Event) + ((ev->body.size + 7) & ~7)));
}
}
extension_data
};
-LV2_SYMBOL_EXPORT
+#if defined(COMPILER_MSVC)
+__declspec(dllexport)
+#else
+__attribute__ ((visibility ("default")))
+#endif
const LV2_Descriptor*
lv2_descriptor(uint32_t idx)
{