Skip to content

Commit 050df38

Browse files
authored
Fix Clang warning due to implicit conversion from int to float for the RAND_MAX macro (LMMS#7717)
* fix compiler warning due to implicit conversion * fix warnings from plugins too
1 parent 3c3441b commit 050df38

File tree

4 files changed

+9
-9
lines changed

4 files changed

+9
-9
lines changed

include/Oscillator.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ class LMMS_EXPORT Oscillator
163163

164164
static inline sample_t noiseSample( const float )
165165
{
166-
return 1.0f - rand() * 2.0f / RAND_MAX;
166+
return 1.0f - rand() * 2.0f / static_cast<float>(RAND_MAX);
167167
}
168168

169169
static sample_t userWaveSample(const SampleBuffer* buffer, const float sample)

plugins/Organic/Organic.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -236,9 +236,9 @@ void OrganicInstrument::playNote( NotePlayHandle * _n,
236236
for( int i = m_numOscillators - 1; i >= 0; --i )
237237
{
238238
static_cast<oscPtr *>( _n->m_pluginData )->phaseOffsetLeft[i]
239-
= rand() / ( RAND_MAX + 1.0f );
239+
= rand() / (static_cast<float>(RAND_MAX) + 1.0f);
240240
static_cast<oscPtr *>( _n->m_pluginData )->phaseOffsetRight[i]
241-
= rand() / ( RAND_MAX + 1.0f );
241+
= rand() / (static_cast<float>(RAND_MAX) + 1.0f);
242242

243243
// initialise ocillators
244244

plugins/Vibed/VibratingString.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ VibratingString::VibratingString(float pitch, float pick, float pickup, const fl
4040
m_oversample{2 * oversample / static_cast<int>(sampleRate / Engine::audioEngine()->baseSampleRate())},
4141
m_randomize{randomize},
4242
m_stringLoss{1.0f - stringLoss},
43-
m_choice{static_cast<int>(m_oversample * static_cast<float>(std::rand()) / RAND_MAX)},
43+
m_choice{static_cast<int>(m_oversample * static_cast<float>(std::rand()) / static_cast<float>(RAND_MAX))},
4444
m_state{0.1f},
4545
m_outsamp{std::make_unique<sample_t[]>(m_oversample)}
4646
{
@@ -78,7 +78,7 @@ std::unique_ptr<VibratingString::DelayLine> VibratingString::initDelayLine(int l
7878
dl->data = std::make_unique<sample_t[]>(len);
7979
for (int i = 0; i < dl->length; ++i)
8080
{
81-
float r = static_cast<float>(std::rand()) / RAND_MAX;
81+
float r = static_cast<float>(std::rand()) / static_cast<float>(RAND_MAX);
8282
float offset = (m_randomize / 2.0f - m_randomize) * r;
8383
dl->data[i] = offset;
8484
}

plugins/Vibed/VibratingString.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -107,13 +107,13 @@ class VibratingString
107107
{
108108
for (int i = 0; i < pick; ++i)
109109
{
110-
float r = static_cast<float>(std::rand()) / RAND_MAX;
110+
float r = static_cast<float>(std::rand()) / static_cast<float>(RAND_MAX);
111111
float offset = (m_randomize / 2.0f - m_randomize) * r;
112112
dl->data[i] = scale * values[dl->length - i - 1] + offset;
113113
}
114114
for (int i = pick; i < dl->length; ++i)
115115
{
116-
float r = static_cast<float>(std::rand()) / RAND_MAX;
116+
float r = static_cast<float>(std::rand()) / static_cast<float>(RAND_MAX);
117117
float offset = (m_randomize / 2.0f - m_randomize) * r;
118118
dl->data[i] = scale * values[i - pick] + offset;
119119
}
@@ -124,7 +124,7 @@ class VibratingString
124124
{
125125
for (int i = pick; i < dl->length; ++i)
126126
{
127-
float r = static_cast<float>(std::rand()) / RAND_MAX;
127+
float r = static_cast<float>(std::rand()) / static_cast<float>(RAND_MAX);
128128
float offset = (m_randomize / 2.0f - m_randomize) * r;
129129
dl->data[i] = scale * values[i - pick] + offset;
130130
}
@@ -133,7 +133,7 @@ class VibratingString
133133
{
134134
for (int i = 0; i < len; ++i)
135135
{
136-
float r = static_cast<float>(std::rand()) / RAND_MAX;
136+
float r = static_cast<float>(std::rand()) / static_cast<float>(RAND_MAX);
137137
float offset = (m_randomize / 2.0f - m_randomize) * r;
138138
dl->data[i+pick] = scale * values[i] + offset;
139139
}

0 commit comments

Comments
 (0)