diff --git a/dpf b/dpf index e045225..d4c2ce6 160000 --- a/dpf +++ b/dpf @@ -1 +1 @@ -Subproject commit e045225a6c08d437d0bcf8400da9b0783291b4a9 +Subproject commit d4c2ce6e3da43ae328876146b60d2d2cca5caa44 diff --git a/plugins/common/gen_dsp/genlib_ops.h b/plugins/common/gen_dsp/genlib_ops.h index 810054d..213016a 100644 --- a/plugins/common/gen_dsp/genlib_ops.h +++ b/plugins/common/gen_dsp/genlib_ops.h @@ -682,9 +682,11 @@ struct Noise { inline t_sample operator()() { last = 1664525L * last + 1013904223L; - unsigned long itemp = 0x3f800000 | (0x007fffff & last); - unsigned long* itempptr = &itemp; - return ((*(float *)itempptr) * 2.f) - 3.f; + union { + unsigned long ul; + float f; + } itemp = { 0x3f800000 | (0x007fffff & last) }; + return itemp.f * 2.f - 3.f; } };