Fix unused warnings release (#3677)

* Release build fix for Windows
* Release build fix for Android
* Release build fix for Windows
* Release build fix for Android
* Release build fix for Linux
* Release build fix for Mac
* Release build fix for iOS

Signed-off-by: Steve Pham <spham@amazon.com>
This commit is contained in:
Steve Pham
2021-08-30 13:10:41 -07:00
committed by GitHub
parent da6bdd5b43
commit fa0f2a1007
94 changed files with 150 additions and 130 deletions
+1
View File
@@ -326,6 +326,7 @@ ActionManager::MenuWrapper ActionManager::FindMenu(const QString& menuId)
return *menuIt;
}
AZ_UNUSED(menuId); // Prevent unused warning in release builds
AZ_Warning("ActionManager", false, "Did not find menu with menuId %s", menuId.toUtf8().data());
return nullptr;
}();
+1 -1
View File
@@ -1528,7 +1528,7 @@ AZ::EntityId EditorViewportWidget::GetCurrentViewEntityId()
&AZ::RPI::ViewProviderBus::Events::GetView
);
const bool isViewEntityCorrect = viewEntityView == GetCurrentAtomView();
[[maybe_unused]] const bool isViewEntityCorrect = viewEntityView == GetCurrentAtomView();
AZ_Error("EditorViewportWidget", isViewEntityCorrect,
"GetCurrentViewEntityId called while the current view is being changed. "
"You may get inconsistent results if you make use of the returned entity ID. "
+1 -1
View File
@@ -1942,7 +1942,7 @@ void CTrackViewAnimNode::OnSelectionChanged(const bool selected)
{
if (m_animNode)
{
const AnimNodeType animNodeType = GetType();
[[maybe_unused]] const AnimNodeType animNodeType = GetType();
AZ_Assert(animNodeType == AnimNodeType::AzEntity, "Expected AzEntity for selection changed");
const EAnimNodeFlags flags = (EAnimNodeFlags)m_animNode->GetFlags();
@@ -153,6 +153,7 @@ namespace AZ
// behavior, we would need to rework the way filters work as well as the code in AssetSerializer.cpp to pass down
// the loadParams.m_assetLoadFilterCB that was passed into the AddDependentAssets() methods to use as the dependent
// asset filter instead of this lambda function.
AZ_UNUSED(handledAssetDependencyList); // Prevent unused warning in release builds
AZ_Assert(AZStd::find(handledAssetDependencyList.begin(), handledAssetDependencyList.end(), filterInfo.m_assetId) !=
handledAssetDependencyList.end(),
"Dependent Asset ID (%s) is expected to load, but the Asset Catalog has no dependency recorded. "
@@ -1478,7 +1478,7 @@ namespace AZ
// Resolve the asset handler and account for the new asset instance.
{
AssetHandlerMap::iterator handlerIt = m_handlers.find(newData->GetType());
[[maybe_unused]] AssetHandlerMap::iterator handlerIt = m_handlers.find(newData->GetType());
AZ_Assert(
handlerIt != m_handlers.end(), "No handler was registered for this asset [type:%s id:%s]!",
newData->GetType().ToString<AZ::OSString>().c_str(), newData->GetId().ToString<AZ::OSString>().c_str());
@@ -1869,7 +1869,7 @@ namespace AZ
{
AZStd::scoped_lock<AZStd::recursive_mutex> requestLock(m_activeBlockingRequestMutex);
auto inserted = m_activeBlockingRequests.insert(AZStd::make_pair(assetId, blockingRequest));
[[maybe_unused]] auto inserted = m_activeBlockingRequests.insert(AZStd::make_pair(assetId, blockingRequest));
AZ_Assert(inserted.second, "Failed to track blocking request for asset %s", assetId.ToString<AZStd::string>().c_str());
}
@@ -45,8 +45,10 @@ namespace AZ
}
}
#if AZ_STREAMER_ADD_EXTRA_PROFILING_INFO
static constexpr char DecompBoundName[] = "Decompression bound";
static constexpr char ReadBoundName[] = "Read bound";
#endif // AZ_STREAMER_ADD_EXTRA_PROFILING_INFO
bool FullFileDecompressor::DecompressionInformation::IsProcessing() const
{
@@ -14,8 +14,10 @@
namespace AZ::IO
{
#if AZ_STREAMER_ADD_EXTRA_PROFILING_INFO
static constexpr char SchedulerName[] = "Scheduler";
static constexpr char ImmediateReadsName[] = "Immediate reads";
#endif // AZ_STREAMER_ADD_EXTRA_PROFILING_INFO
Scheduler::Scheduler(AZStd::shared_ptr<StreamStackEntry> streamStack, u64 memoryAlignment, u64 sizeAlignment, u64 granularity)
{
@@ -337,7 +339,7 @@ namespace AZ::IO
AZStd::chrono::system_clock::time_point now = AZStd::chrono::system_clock::now();
auto visitor = [this, now](auto&& args) -> void
#else
auto visitor = [this](auto&& args) -> void
auto visitor = [](auto&& args) -> void
#endif
{
using Command = AZStd::decay_t<decltype(args)>;
@@ -17,10 +17,11 @@ namespace AZ
namespace IO
{
static constexpr char ContextName[] = "Context";
#if AZ_STREAMER_ADD_EXTRA_PROFILING_INFO
static constexpr char PredictionAccuracyName[] = "Prediction accuracy (ms)";
static constexpr char LatePredictionName[] = "Early completions";
static constexpr char MissedDeadlinesName[] = "Missed deadlines";
#endif // AZ_STREAMER_ADD_EXTRA_PROFILING_INFO
StreamerContext::~StreamerContext()
{
for (FileRequest* entry : m_internalRecycleBin)
@@ -511,7 +511,7 @@ AZ::OverrunDetectionSchemaImpl::OverrunDetectionSchemaImpl(const OverrunDetectio
{
m_platformAllocator.reset(new Internal::PlatformOverrunDetectionSchema);
auto info = m_platformAllocator->GetSystemInformation();
[[maybe_unused]] auto info = m_platformAllocator->GetSystemInformation();
AZ_Assert(info.m_pageSize == Internal::ODS_PAGE_SIZE, "System page size %d does not equal expected page size %d", info.m_pageSize, Internal::ODS_PAGE_SIZE);
AZ_Assert(info.m_minimumAllocationSize == Internal::ODS_ALLOCATION_SIZE, "System minimum allocation size %d does not equal expected size %d", info.m_minimumAllocationSize, Internal::ODS_ALLOCATION_SIZE);
@@ -87,7 +87,7 @@ namespace AZ
{
Internal::NameData* nameData = keyValue.second;
const int useCount = keyValue.second->m_useCount;
const bool hadCollision = keyValue.second->m_hashCollision;
[[maybe_unused]] const bool hadCollision = keyValue.second->m_hashCollision;
if (useCount == 0)
{
@@ -43,7 +43,7 @@ namespace AZ
if (!overwriteExisting)
{
auto emplaceResult = m_context->m_handledTypesMap.try_emplace(uuid, serializer);
[[maybe_unused]] auto emplaceResult = m_context->m_handledTypesMap.try_emplace(uuid, serializer);
AZ_Assert(
emplaceResult.second,
"Couldn't register Json serializer %s. Another serializer (%s) has already been registered for the same Uuid (%s).",
@@ -1520,6 +1520,7 @@ namespace AZ
{
if (m_writeElementResultStack.empty())
{
AZ_UNUSED(classData); // Prevent unused warning in release builds
AZ_Error("Serialize", false, "CloseElement is attempted to be called without a corresponding WriteElement when writing class %s", classData->m_name);
return true;
}
@@ -1581,6 +1582,7 @@ namespace AZ
{
if (m_writeElementResultStack.empty())
{
AZ_UNUSED(classData); // Prevent unused warning in release builds
AZ_Error("Serialize", false, "CloseElement is attempted to be called without a corresponding WriteElement when writing class %s", classData->m_name);
return true;
}
@@ -1644,6 +1646,7 @@ namespace AZ
{
if (m_writeElementResultStack.empty())
{
AZ_UNUSED(classData); // Prevent unused warning in release builds
AZ_Error("Serialize", false, "CloseElement is attempted to be called without a corresponding WriteElement when writing class %s", classData->m_name);
return true;
}
@@ -3839,6 +3839,7 @@ namespace AZ
{
if (instance->GetId() == existingInstance.GetId())
{
AZ_UNUSED(sliceReference); // Prevent unused warning in release builds
AZ_Warning("Slice", false, "Multiple slice instances with the same ID from slice %s were found. The last instance found has been loaded.",
sliceReference.GetSliceAsset().GetHint().c_str());
return true;
@@ -32,7 +32,7 @@ namespace AZ
timespec wait;
wait.tv_sec = 0;
wait.tv_nsec = 5000;
int result = ::gethostuuid(hostId, &wait);
[[maybe_unused]] int result = ::gethostuuid(hostId, &wait);
AZ_Error("System", result == 0, "gethostuuid() failed with code %d", result);
Sha1 hash;
AZ::u32 digest[5] = { 0 };
@@ -72,7 +72,7 @@
#include <cctype>
#include <stdio.h>
static const char* s_azFrameworkWarningWindow = "AzFramework";
[[maybe_unused]] static const char* s_azFrameworkWarningWindow = "AzFramework";
namespace AzFramework
{
@@ -602,7 +602,7 @@ namespace AzFramework
void Application::SetRootPath(RootPathType type, const char* source)
{
const size_t sourceLen = strlen(source);
[[maybe_unused]] const size_t sourceLen = strlen(source);
// Copy the source path to the intended root path and correct the path separators as well
switch (type)
@@ -43,7 +43,7 @@ namespace AzFramework::AssetBenchmark
AZStd::thread benchmarkThread([assetList = AZStd::move(sourceAssetList), loadBlocking]()
{
// Define the set of loading stats to track
const size_t initialRequests = assetList.size();
[[maybe_unused]] const size_t initialRequests = assetList.size();
size_t previouslyLoadedAssets = 0;
size_t newlyLoadedAssets = 0;
size_t loadErrors = 0;
@@ -24,9 +24,9 @@ namespace AZ
namespace IO
{
//////////////////////////////////////////////////////////////////////////
const char* const NetworkFileIOChannel = "NetworkFileIO";
[[maybe_unused]] const char* const NetworkFileIOChannel = "NetworkFileIO";
#ifndef REMOTEFILEIO_IS_NETWORKFILEIO
const char* const RemoteFileIOChannel = "RemoteFileIO";
[[maybe_unused]] const char* const RemoteFileIOChannel = "RemoteFileIO";
#ifdef REMOTEFILEIO_SYNC_CHECK
const char* const RemoteFileCacheChannel = "RemoteFileCache";
#endif
@@ -177,7 +177,7 @@ namespace AzFramework
//trying to connect, if any error occurs start the disconnect thread
void AssetProcessorConnection::ConnectThread()
{
static constexpr char ConnectThreadWindow[] = "AssetProcessorConnection::ConnectThread";
[[maybe_unused]] static constexpr char ConnectThreadWindow[] = "AssetProcessorConnection::ConnectThread";
//check for join before doing an op
if (m_connectThread.m_join)
@@ -91,7 +91,7 @@ namespace AzFramework
const AZ::Frustum::PlaneId planeId3)
{
AZ::Vector3 corner = AZ::Vector3::CreateZero();
const auto intersectionOkay = AZ::ShapeIntersection::IntersectThreePlanes(
[[maybe_unused]] const auto intersectionOkay = AZ::ShapeIntersection::IntersectThreePlanes(
frustum.GetPlane(planeId1), frustum.GetPlane(planeId2), frustum.GetPlane(planeId3), corner);
AZ_Assert(intersectionOkay, "Plane intersection of Frustum failed");
@@ -175,7 +175,7 @@ namespace AzFramework
m_packedSensorDataArray = new float[packedSensorDataLength];
// create the java instance
bool ret = m_motionSensorManager->CreateInstance("(Landroid/app/Activity;)V", AZ::Android::Utils::GetActivityRef());
[[maybe_unused]] bool ret = m_motionSensorManager->CreateInstance("(Landroid/app/Activity;)V", AZ::Android::Utils::GetActivityRef());
AZ_Assert(ret, "Failed to create the MotionSensorManager Java instance.");
}
@@ -128,7 +128,7 @@ namespace AzFramework
});
// create the java instance
bool ret = m_keyboardHandler->CreateInstance("(Landroid/app/Activity;)V", AZ::Android::Utils::GetActivityRef());
[[maybe_unused]] bool ret = m_keyboardHandler->CreateInstance("(Landroid/app/Activity;)V", AZ::Android::Utils::GetActivityRef());
AZ_Assert(ret, "Failed to create the KeyboardHandler Java instance.");
// Connect to the raw input notifications bus
@@ -78,7 +78,7 @@ namespace AzFramework
FD_ZERO(&set);
FD_SET(handle->GetHandle(), &set);
int numReady = select(handle->GetHandle() + 1, &set, NULL, NULL, NULL);
[[maybe_unused]] int numReady = select(handle->GetHandle() + 1, &set, NULL, NULL, NULL);
// if numReady == -1 and errno == EINTR then the child process died unexpectedly and
// the handle was closed. Not something to assert about in regards to trying to read
@@ -87,7 +87,7 @@ namespace AzFramework
// dead and return any error codes the child may have written to the error stream.
AZ_Assert(numReady != -1 || errno == EINTR, "Could not determine if any data is available for reading due to an error. Errno: %d", errno);
const bool wasSet = FD_ISSET(handle->GetHandle(), &set);
[[maybe_unused]] const bool wasSet = FD_ISSET(handle->GetHandle(), &set);
AZ_Assert(wasSet, "handle was not set when we selected it for read");
return 0;
@@ -75,7 +75,7 @@ namespace AzFramework
FD_ZERO(&set);
FD_SET(handle->GetHandle(), &set);
int numReady = select(handle->GetHandle() + 1, &set, NULL, NULL, NULL);
[[maybe_unused]] int numReady = select(handle->GetHandle() + 1, &set, NULL, NULL, NULL);
// if numReady == -1 and errno == EINTR then the child process died unexpectedly and
// the handle was closed. Not something to assert about in regards to trying to read
@@ -84,7 +84,7 @@ namespace AzFramework
// dead and return any error codes the child may have written to the error stream.
AZ_Assert(numReady != -1 || errno == EINTR, "Could not determine if any data is available for reading due to an error. Errno: %d", errno);
const bool wasSet = FD_ISSET(handle->GetHandle(), &set);
[[maybe_unused]] const bool wasSet = FD_ISSET(handle->GetHandle(), &set);
AZ_Assert(wasSet, "handle was not set when we selected it for read");
return 0;
@@ -181,10 +181,10 @@ namespace AzToolsFramework
PrefabDomUtils::ApplyPatches(sourceTemplateDomCopy, targetTemplatePrefabDom.GetAllocator(), patchesReference->get());
linkedInstanceDom.CopyFrom(sourceTemplateDomCopy, targetTemplatePrefabDom.GetAllocator());
PrefabDomValueReference sourceTemplateName =
[[maybe_unused]] PrefabDomValueReference sourceTemplateName =
PrefabDomUtils::FindPrefabDomValue(sourceTemplateDomCopy, PrefabDomUtils::SourceName);
AZ_Assert(sourceTemplateName && sourceTemplateName->get().IsString(), "A valid source template name couldn't be found");
PrefabDomValueReference targetTemplateName =
[[maybe_unused]] PrefabDomValueReference targetTemplateName =
PrefabDomUtils::FindPrefabDomValue(targetTemplatePrefabDom, PrefabDomUtils::SourceName);
AZ_Assert(targetTemplateName && targetTemplateName->get().IsString(), "A valid target template name couldn't be found");
@@ -1259,12 +1259,12 @@ namespace AzToolsFramework
auto& containerEntity = *containerEntityPtr.release();
auto editorPrefabComponent = containerEntity.FindComponent<EditorPrefabComponent>();
containerEntity.Deactivate();
const bool editorPrefabComponentRemoved = containerEntity.RemoveComponent(editorPrefabComponent);
[[maybe_unused]] const bool editorPrefabComponentRemoved = containerEntity.RemoveComponent(editorPrefabComponent);
AZ_Assert(editorPrefabComponentRemoved, "Remove EditorPrefabComponent failed.");
delete editorPrefabComponent;
containerEntity.Activate();
const bool containerEntityAdded = parentInstance.AddEntity(containerEntity);
[[maybe_unused]] const bool containerEntityAdded = parentInstance.AddEntity(containerEntity);
AZ_Assert(containerEntityAdded, "Add target Instance's container entity to its parent Instance failed.");
EntityIdList entityIds;
@@ -1281,7 +1281,7 @@ namespace AzToolsFramework
[&](AZStd::unique_ptr<AZ::Entity> entityPtr)
{
auto& entity = *entityPtr.release();
const bool entityAdded = parentInstance.AddEntity(entity);
[[maybe_unused]] const bool entityAdded = parentInstance.AddEntity(entity);
AZ_Assert(entityAdded, "Add target Instance's entity to its parent Instance failed.");
entityIds.emplace_back(entity.GetId());
@@ -783,7 +783,7 @@ namespace AzToolsFramework
PrefabDomValue& instance = instanceIterator->value;
AZ_Assert(instance.IsObject(), "Nested instance DOM provided is not a valid JSON object.");
PrefabDomValueReference sourceTemplateName = PrefabDomUtils::FindPrefabDomValue(instance, PrefabDomUtils::SourceName);
[[maybe_unused]] PrefabDomValueReference sourceTemplateName = PrefabDomUtils::FindPrefabDomValue(instance, PrefabDomUtils::SourceName);
AZ_Assert(sourceTemplateName, "Couldn't find source template name in the DOM of the nested instance while creating a link.");
AZ_Assert(
sourceTemplateName->get() == sourceTemplate.GetFilePath().c_str(),
@@ -262,7 +262,7 @@ namespace AzToolsFramework
instanceDom.CopyFrom(instanceDomRef->get(), instanceDom.GetAllocator());
//apply the patch to the template within the target
AZ::JsonSerializationResult::ResultCode result = PrefabDomUtils::ApplyPatches(instanceDom, instanceDom.GetAllocator(), patch);
[[maybe_unused]] AZ::JsonSerializationResult::ResultCode result = PrefabDomUtils::ApplyPatches(instanceDom, instanceDom.GetAllocator(), patch);
AZ_Error(
"Prefab",
@@ -2525,7 +2525,7 @@ namespace AzToolsFramework
{
// This is an approximate measurement of how much this slice proliferates within the currently-loaded level.
// Down the line we'll actually query the asset DB's dependency tree, summing up instances.
AZ_UNUSED(levelSlice); // Prevent unused warning in release builds
AZ_Warning("SlicePush", levelSlice, "SlicePushWidget::CalculateReferenceCount could not find root slice, displayed counts will be inaccurate!");
size_t instanceCount = 0;
AZ::Data::AssetBus::EnumerateHandlersId(assetId,
@@ -97,7 +97,7 @@ namespace UnitTest
//apply the patch
PrefabDom& templateDomReference = m_prefabSystemComponent->FindTemplateDom(nestedTemplateId);
AZ::JsonSerializationResult::ResultCode result =
[[maybe_unused]] AZ::JsonSerializationResult::ResultCode result =
PrefabDomUtils::ApplyPatches(templateDomReference, templateDomReference.GetAllocator(), patch);
AZ_Error("Prefab", result.GetOutcome() == AZ::JsonSerializationResult::Outcomes::Success,
@@ -1452,7 +1452,7 @@ void CarrierThread::NotifyRateUpdate(ThreadConnection* conn)
float rtt = lifetime.m_rtt > 1.f ? lifetime.m_rtt : 100.f; //For unknown RTT use conservative 100ms to avoid buffer bloat
//Note: using lifetime RTT as stand-in for smoothed RTT
float ratef = (1010 * (cState.m_congestionWindow)) / rtt; //Add 10% to allow rate increases until buffer fills up
constexpr float max_rate = azlossy_cast<float>(0x7FFFFFFF);
[[maybe_unused]] constexpr float max_rate = azlossy_cast<float>(0x7FFFFFFF);
AZ_Assert(ratef <= max_rate, " ratef %f > 0x7FFFFFFF", ratef);
bytesPerSecond = static_cast<AZ::u32>(ratef);
+1 -1
View File
@@ -87,7 +87,7 @@ bool CConsoleBatchFile::ExecuteConfigFile(const char* sFilename)
CCryFile file;
{
const char* szLog = "Executing console batch file (try game,config,root):";
[[maybe_unused]] const char* szLog = "Executing console batch file (try game,config,root):";
AZStd::string filenameLog;
AZStd::string sfn = PathUtil::GetFile(filename);
@@ -32,8 +32,11 @@
#define MAX_CELL_COUNT 32
// CVAR names
#if !defined(_RELEASE)
const char c_sys_localization_debug[] = "sys_localization_debug";
const char c_sys_localization_encode[] = "sys_localization_encode";
#endif // !defined(_RELEASE)
#define LOC_WINDOW "Localization"
const char c_sys_localization_format[] = "sys_localization_format";
@@ -1754,7 +1757,7 @@ void CLocalizedStringsManager::ReloadData()
void CLocalizedStringsManager::AddLocalizedString(SLanguage* pLanguage, SLocalizedStringEntry* pEntry, const uint32 keyCRC32)
{
pLanguage->m_vLocalizedStrings.push_back(pEntry);
int nId = (int)pLanguage->m_vLocalizedStrings.size() - 1;
[[maybe_unused]] int nId = (int)pLanguage->m_vLocalizedStrings.size() - 1;
pLanguage->m_keysMap[keyCRC32] = pEntry;
if (m_cvarLocalizationDebug >= 2)
+1 -1
View File
@@ -744,7 +744,7 @@ void CLog::LogToConsolePlus(const char* szFormat, ...)
//////////////////////////////////////////////////////////////////////
static void RemoveColorCodeInPlace(CLog::LogStringType& rStr)
[[maybe_unused]] static void RemoveColorCodeInPlace(CLog::LogStringType& rStr)
{
char* s = (char*)rStr.c_str();
char* d = s;
+1 -1
View File
@@ -1465,7 +1465,7 @@ void CSystem::SetSystemGlobalState(const ESystemGlobalState systemGlobalState)
if (gEnv && gEnv->pTimer)
{
const CTimeValue endTime = gEnv->pTimer->GetAsyncTime();
const float numSeconds = endTime.GetDifferenceInSeconds(s_startTime);
[[maybe_unused]] const float numSeconds = endTime.GetDifferenceInSeconds(s_startTime);
CryLog("SetGlobalState %d->%d '%s'->'%s' %3.1f seconds",
m_systemGlobalState, systemGlobalState,
CSystem::GetSystemGlobalStateName(m_systemGlobalState), CSystem::GetSystemGlobalStateName(systemGlobalState),
+2 -2
View File
@@ -180,7 +180,7 @@ void CSystem::LogVersion()
strftime(s, 128, "%d %b %y (%H %M %S)", today);
#endif
const SFileVersion& ver = GetFileVersion();
[[maybe_unused]] const SFileVersion& ver = GetFileVersion();
CryLogAlways("BackupNameAttachment=\" Build(%d) %s\" -- used by backup system\n", ver.v[0], s); // read by CreateBackupFile()
@@ -251,7 +251,7 @@ void CSystem::LogVersion()
//////////////////////////////////////////////////////////////////////////
void CSystem::LogBuildInfo()
{
auto projectName = AZ::Utils::GetProjectName();
[[maybe_unused]] auto projectName = AZ::Utils::GetProjectName();
CryLogAlways("GameName: %s", projectName.c_str());
CryLogAlways("BuildTime: " __DATE__ " " __TIME__);
}
+2 -2
View File
@@ -257,8 +257,8 @@ static void CmdCrashTest(IConsoleCmdArgs* pArgs)
{
float a = 1.0f;
memset(&a, 0, sizeof(a));
float* b = &a;
float c = 3;
[[maybe_unused]] float* b = &a;
[[maybe_unused]] float c = 3;
CryLog("%f", (c / *b));
}
break;
+3 -3
View File
@@ -550,7 +550,7 @@ void CTimer::Serialize(TSerialize ser)
if (m_TimeDebug)
{
const int64 now = CryGetTicks();
[[maybe_unused]] const int64 now = CryGetTicks();
CryLogAlways("[CTimer]: Serialize: Last=%lld Now=%lld Off=%lld Async=%f CurrTime=%f UI=%f", (long long)m_lLastTime, (long long)now, (long long)m_lOffsetTime, GetAsyncCurTime(), GetCurrTime(ETIMER_GAME), GetCurrTime(ETIMER_UI));
}
}
@@ -700,8 +700,8 @@ void CTimer::EnableFixedTimeMode([[maybe_unused]] bool enable, [[maybe_unused]]
void CTimer::SetOffsetToMatchGameTime(int64 ticks)
{
const int64 previousOffset = m_lOffsetTime;
const float previousGameTime = GetCurrTime(ETIMER_GAME);
[[maybe_unused]] const int64 previousOffset = m_lOffsetTime;
[[maybe_unused]] const float previousGameTime = GetCurrTime(ETIMER_GAME);
m_lOffsetTime = ticks - m_lLastTime;
RefreshGameTime(m_lLastTime);
@@ -1399,7 +1399,7 @@ namespace AssetBundler
AZStd::string_view{ AZ::Utils::GetEnginePath() },
AZStd::string_view{ AZ::Utils::GetEnginePath() },
AZStd::string_view{ AZ::Utils::GetProjectPath() });
auto platformsString = AzFramework::PlatformHelper::GetCommaSeparatedPlatformList(platformFlags);
[[maybe_unused]] auto platformsString = AzFramework::PlatformHelper::GetCommaSeparatedPlatformList(platformFlags);
AZ_TracePrintf(AppWindowName, "No platform specified, defaulting to platforms ( %s ).\n", platformsString.c_str());
return platformFlags;
@@ -57,7 +57,7 @@ namespace AZ
// This node has at least one mesh, verify that the color channel counts are the same for all meshes.
const unsigned int expectedColorChannels = scene->mMeshes[currentNode->mMeshes[0]]->GetNumColorChannels();
const bool allMeshesHaveSameNumberOfColorChannels =
[[maybe_unused]] const bool allMeshesHaveSameNumberOfColorChannels =
AZStd::all_of(currentNode->mMeshes + 1, currentNode->mMeshes + currentNode->mNumMeshes, [scene, expectedColorChannels](const unsigned int meshIndex)
{
return scene->mMeshes[meshIndex]->GetNumColorChannels() == expectedColorChannels;
@@ -1020,7 +1020,7 @@ namespace LUAEditor
{
AZ_TracePrintf(LUAEditorDebugName, AZStd::string::format("LUAEditor OnSaveDocumentAs" "%s\n", assetId.c_str()).c_str());
DocumentInfoMap::iterator docInfoIter = m_documentInfoMap.find(assetId);
[[maybe_unused]] DocumentInfoMap::iterator docInfoIter = m_documentInfoMap.find(assetId);
AZ_Assert(docInfoIter != m_documentInfoMap.end(), "LUAEditor OnSaveDocumentAs() : Cant find Document Info.");
OnSaveDocument(assetId, bCloseAfterSave, true);
@@ -98,7 +98,7 @@ namespace ImageProcessingAtom
else
{
IImageObjectPtr dstImage = nullptr;
const PixelFormatInfo* compressedInfo = CPixelFormats::GetInstance().GetPixelFormatInfo(compressedFmt);
[[maybe_unused]] const PixelFormatInfo* compressedInfo = CPixelFormats::GetInstance().GetPixelFormatInfo(compressedFmt);
if (isSrcUncompressed)
{
AZ::u64 startTime = AZStd::GetTimeUTCMilliSecond();
@@ -350,7 +350,7 @@ namespace ImageProcessingAtom
// output conversion log
if (m_isSucceed && m_isFinished)
{
const uint32 sizeTotal = m_image->Get()->GetTextureMemory();
[[maybe_unused]] const uint32 sizeTotal = m_image->Get()->GetTextureMemory();
if (m_input->m_isPreview)
{
AZ_TracePrintf("Image Processing", "Image (%d bytes) converted in %f seconds\n", sizeTotal, m_processTime);
@@ -971,7 +971,7 @@ namespace ImageProcessingAtom
IImageObjectPtr previewImageAlpha = imageToProcess2.Get();
const uint32 imageMips = previewImage->GetMipCount();
const uint32 alphaMips = previewImageAlpha->GetMipCount();
[[maybe_unused]] const uint32 alphaMips = previewImageAlpha->GetMipCount();
// Get count of bytes per pixel for both rgb and alpha images
uint32 imagePixelBytes = CPixelFormats::GetInstance().GetPixelFormatInfo(ePixelFormat_R8G8B8A8)->bitsPerBlock / 8;
@@ -983,7 +983,7 @@ namespace ImageProcessingAtom
for (uint32 mipLevel = 0; mipLevel < imageMips; ++mipLevel)
{
const uint32 pixelCount = previewImage->GetPixelCount(mipLevel);
const uint32 alphaPixelCount = previewImageAlpha->GetPixelCount(mipLevel);
[[maybe_unused]] const uint32 alphaPixelCount = previewImageAlpha->GetPixelCount(mipLevel);
AZ_Assert(pixelCount == alphaPixelCount, "Pixel count for image and alpha image at mip level %d is not equal!", mipLevel);
@@ -830,7 +830,7 @@ namespace UnitTest
continue;
}
auto formatInfo = CPixelFormats::GetInstance().GetPixelFormatInfo(pixelFormat);
[[maybe_unused]] auto formatInfo = CPixelFormats::GetInstance().GetPixelFormatInfo(pixelFormat);
imageToProcess.Set(srcImage);
imageToProcess.ConvertFormat(pixelFormat);
@@ -908,9 +908,9 @@ namespace AZ
AZ_Assert(optionEntry.IsObject(), "Expected option entry to be an object!");
Name defaultValueId = optionEntry.HasMember("defaultValue") ? Name(optionEntry["defaultValue"].GetString()) : Name();
const AZStd::string optionName = optionEntry.HasMember("name") ? optionEntry["name"].GetString() : "";
const bool valuesAreRange = optionEntry.HasMember("range") ? optionEntry["range"].GetBool() : false;
const bool isPredefinedType = optionEntry.HasMember("kind") ? AzFramework::StringFunc::Equal(optionEntry["kind"].GetString(), "predefined") : false;
const AZStd::string optionName = optionEntry.HasMember("name") ? optionEntry["name"].GetString() : "";
[[maybe_unused]] const bool valuesAreRange = optionEntry.HasMember("range") ? optionEntry["range"].GetBool() : false;
const bool isPredefinedType = optionEntry.HasMember("kind") ? AzFramework::StringFunc::Equal(optionEntry["kind"].GetString(), "predefined") : false;
auto optionType = RPI::ShaderOptionType::Unknown;
if (isPredefinedType && optionEntry.HasMember("type"))
@@ -462,7 +462,7 @@ namespace AZ
{
finalShaderOptionGroupLayout = shaderOptionGroupLayout;
shaderAssetCreator.SetShaderOptionGroupLayout(finalShaderOptionGroupLayout);
const uint32_t usedShaderOptionBits = shaderOptionGroupLayout->GetBitSize();
[[maybe_unused]] const uint32_t usedShaderOptionBits = shaderOptionGroupLayout->GetBitSize();
AZ_TracePrintf(
ShaderAssetBuilderName, "Note: This shader uses %u of %u available shader variant key bits. \n",
usedShaderOptionBits, RPI::ShaderVariantKeyBitCount);
@@ -388,7 +388,7 @@ namespace AZ
for (const AZ::RPI::ShaderVariantListSourceData::VariantInfo& variantInfo : shaderVariantList.m_shaderVariants)
{
AZStd::string variantInfoAsJsonString;
const bool convertSuccess = AZ::RPI::JsonUtils::SaveObjectToJsonString(variantInfo, variantInfoAsJsonString);
[[maybe_unused]] const bool convertSuccess = AZ::RPI::JsonUtils::SaveObjectToJsonString(variantInfo, variantInfoAsJsonString);
AZ_Assert(convertSuccess, "Failed to convert VariantInfo to json string");
AssetBuilderSDK::JobDescriptor jobDescriptor;
@@ -755,7 +755,7 @@ namespace AZ
const AZStd::string& variantJsonString = jobParameters.at(ShaderVariantJobVariantParam);
RPI::ShaderVariantListSourceData::VariantInfo variantInfo;
const bool fromJsonStringSuccess = AZ::RPI::JsonUtils::LoadObjectFromJsonString(variantJsonString, variantInfo);
[[maybe_unused]] const bool fromJsonStringSuccess = AZ::RPI::JsonUtils::LoadObjectFromJsonString(variantJsonString, variantInfo);
AZ_Assert(fromJsonStringSuccess, "Failed to convert json string to VariantInfo");
RPI::ShaderSourceData shaderSourceDescriptor;
@@ -325,11 +325,11 @@ namespace AZ
DirectionalLightFeatureProcessorInterface::LightHandle DirectionalLightFeatureProcessor::AcquireLight()
{
const uint16_t index = m_lightData.GetFreeSlotIndex();
const uint16_t shadowPropIndex = m_shadowProperties.GetFreeSlotIndex();
[[maybe_unused]] const uint16_t shadowPropIndex = m_shadowProperties.GetFreeSlotIndex();
AZ_Assert(index == shadowPropIndex, "light index is illegal.");
for (const auto& viewIt : m_cameraViewNames)
{
const uint16_t shadowIndex = m_shadowData.at(viewIt.first).GetFreeSlotIndex();
[[maybe_unused]] const uint16_t shadowIndex = m_shadowData.at(viewIt.first).GetFreeSlotIndex();
AZ_Assert(index == shadowIndex, "light index is illegal.");
}
@@ -38,7 +38,7 @@ namespace AZ
{
namespace
{
static const char* PassName = "ImGuiPass";
[[maybe_unused]] static const char* PassName = "ImGuiPass";
static const char* ImguiShaderFilePath = "Shaders/imgui/imgui.azshader";
}
@@ -17,7 +17,7 @@ namespace AZ
{
namespace Render
{
static const char* ClassName = "GpuBufferHandler";
[[maybe_unused]] static const char* ClassName = "GpuBufferHandler";
static const uint32_t BufferMinSize = 1 << 16; // Min 64Kb.
GpuBufferHandler::GpuBufferHandler(const Descriptor& descriptor)
@@ -71,7 +71,7 @@ namespace AZ
{
EndContextInternal(m_contexts[contextIndex], contextIndex);
const int32_t activeCount = --m_contextCountActive;
[[maybe_unused]] const int32_t activeCount = --m_contextCountActive;
AZ_Assert(activeCount >= 0, "Asymmetric calls to FrameSchedulerExecuteContext:: Begin / End.");
++m_contextCountCompleted;
}
+2 -2
View File
@@ -98,8 +98,8 @@ namespace AZ
if (Validation::IsEnabled())
{
// The frame attachment has tight control over lifecycle here.
const bool isAttach = (!m_frameAttachment && frameAttachment);
const bool isDetach = (m_frameAttachment && !frameAttachment);
[[maybe_unused]] const bool isAttach = (!m_frameAttachment && frameAttachment);
[[maybe_unused]] const bool isDetach = (m_frameAttachment && !frameAttachment);
AZ_Assert(isAttach || isDetach, "The frame attachment for resource '%s' was not assigned properly.");
}
+1
View File
@@ -121,6 +121,7 @@ namespace UnitTest
bufferPool->ForEach<RHI::Buffer>([&bufferIndex, &buffers]([[maybe_unused]] RHI::Buffer& buffer)
{
AZ_UNUSED(buffers); // Prevent unused warning in release builds
AZ_Assert(buffers[bufferIndex] == &buffer, "buffers don't match");
bufferIndex++;
});
+1 -1
View File
@@ -58,7 +58,7 @@ namespace UnitTest
FrameGraphExecuteGroup* group = AddGroup<FrameGraphExecuteGroup>();
group->Init(scope->GetId());
const bool wasInserted = m_scopeIds.emplace(scope->GetId()).second;
[[maybe_unused]] const bool wasInserted = m_scopeIds.emplace(scope->GetId()).second;
AZ_Assert(wasInserted, "scope was inserted already");
}
}
+1
View File
@@ -108,6 +108,7 @@ namespace UnitTest
imagePool->ForEach<RHI::Image>([&imageIndex, &images]([[maybe_unused]] const RHI::Image& image)
{
AZ_UNUSED(images); // Prevent unused warning in release builds
AZ_Assert(images[imageIndex] == &image, "images don't match");
imageIndex++;
});
+1
View File
@@ -112,6 +112,7 @@ namespace UnitTest
queryPool->ForEach<RHI::Query>([&queryIndex, &queries]([[maybe_unused]] RHI::Query& query)
{
AZ_UNUSED(queries); // Prevent unused warning in release builds
AZ_Assert(queries[queryIndex] == &query, "Queries don't match");
queryIndex++;
});
@@ -191,7 +191,7 @@ namespace AZ
StageDescriptor& outputDescriptor,
const RHI::ShaderCompilerArguments& shaderCompilerArguments) const
{
for (auto srgLayout : m_srgLayouts)
for ([[maybe_unused]] auto srgLayout : m_srgLayouts)
{
AZ_Assert(srgLayout != nullptr, "Most likely BuildPipelineLayoutDescriptor() was not called!");
}
@@ -280,7 +280,7 @@ namespace AZ
// Enable half precision types when shader model >= 6.2
int shaderModelMajor = 0;
int shaderModelMinor = 0;
int numValuesRead = azsscanf(shaderModelVersion.c_str(), "%d_%d", &shaderModelMajor, &shaderModelMinor);
[[maybe_unused]] int numValuesRead = azsscanf(shaderModelVersion.c_str(), "%d_%d", &shaderModelMajor, &shaderModelMinor);
AZ_Assert(numValuesRead == 2, "Unknown shader model version format");
if (shaderModelMajor >= 6 && shaderModelMinor >= 2)
{
@@ -431,7 +431,7 @@ namespace AZ
}
else
{
bool isBoundToGraphics = RHI::CheckBitsAny(visMaskIt->second, RHI::ShaderStageMask::Vertex) || RHI::CheckBitsAny(visMaskIt->second, RHI::ShaderStageMask::Fragment);
[[maybe_unused]] bool isBoundToGraphics = RHI::CheckBitsAny(visMaskIt->second, RHI::ShaderStageMask::Vertex) || RHI::CheckBitsAny(visMaskIt->second, RHI::ShaderStageMask::Fragment);
AZ_Assert(isBoundToGraphics, "The visibility mask %i is not set for Vertex or fragment stage", visMaskIt->second);
CollectResourcesForGraphics(commandEncoder, visMaskIt->second, it.second, resourcesToMakeResidentGraphics);
}
@@ -54,7 +54,7 @@ namespace AZ
usage : textureUsage];
mtlTextureDesc.textureType = MTLTextureTypeTextureBuffer;
uint32_t bytesPerRow = viewDescriptor.m_elementCount * bytesPerPixel;
[[maybe_unused]] uint32_t bytesPerRow = viewDescriptor.m_elementCount * bytesPerPixel;
AZ_Assert(bytesPerRow == (viewDescriptor.m_elementCount * viewDescriptor.m_elementSize), "Mismatch for bytesPerRow");
id<MTLTexture> mtlTexture = [mtlBuffer newTextureWithDescriptor : mtlTextureDesc
offset : m_memoryView.GetOffset()
@@ -188,7 +188,7 @@ namespace AZ
}
else
{
const char * errorStr = [ error.localizedDescription UTF8String ];
[[maybe_unused]] const char * errorStr = [ error.localizedDescription UTF8String ];
AZ_Error("PipelineState", false, "Failed to compile compute pipeline state with error: %s.", errorStr);
return RHI::ResultCode::Fail;
}
@@ -221,7 +221,7 @@ namespace AZ
}
else
{
const char * errorStr = [ error.localizedDescription UTF8String ];
[[maybe_unused]] const char * errorStr = [ error.localizedDescription UTF8String ];
AZ_Error("PipelineState", false, "Failed to compile compute pipeline state with error: %s.", errorStr);
return RHI::ResultCode::Fail;
}
@@ -108,7 +108,7 @@ namespace AZ
VkAccelerationStructureKHR BufferView::GetNativeAccelerationStructure() const
{
bool hasOverrideFlags = GetDescriptor().m_overrideBindFlags != RHI::BufferBindFlags::None;
const RHI::BufferBindFlags bindFlags = hasOverrideFlags ? GetDescriptor().m_overrideBindFlags : GetBuffer().GetDescriptor().m_bindFlags;
[[maybe_unused]] const RHI::BufferBindFlags bindFlags = hasOverrideFlags ? GetDescriptor().m_overrideBindFlags : GetBuffer().GetDescriptor().m_bindFlags;
AZ_Assert(RHI::CheckBitsAll(bindFlags, RHI::BufferBindFlags::RayTracingAccelerationStructure),
"GetNativeAccelerationStructure() is only valid for buffers with the RayTracingAccelerationStructure bind flag");
@@ -117,10 +117,10 @@ namespace AZ
const auto& device = static_cast<const Device&>(GetDevice());
const auto& physicalDevice = static_cast<const PhysicalDevice&>(GetDevice().GetPhysicalDevice());
const uint16_t width = static_cast<uint16_t>(imgDesc.m_size.m_width);
const uint16_t height = static_cast<uint16_t>(imgDesc.m_size.m_height);
[[maybe_unused]] const uint16_t width = static_cast<uint16_t>(imgDesc.m_size.m_width);
[[maybe_unused]] const uint16_t height = static_cast<uint16_t>(imgDesc.m_size.m_height);
const uint16_t depth = AZStd::min(static_cast<uint16_t>(imgViewDesc.m_depthSliceMax - imgViewDesc.m_depthSliceMin), static_cast<uint16_t>(imgDesc.m_size.m_depth - 1)) + 1;
const uint16_t samples = imgDesc.m_multisampleState.m_samples;
[[maybe_unused]] const uint16_t samples = imgDesc.m_multisampleState.m_samples;
const uint16_t arrayLayers = AZStd::min(static_cast<uint16_t>(imgViewDesc.m_arraySliceMax - imgViewDesc.m_arraySliceMin), static_cast<uint16_t>(imgDesc.m_arraySize - 1)) + 1;
// We cannot only use the number of layers of the ImageView to determinate if is a texture array. You can have a texture array with only 1 layer and the shader expects
// an array type instead of a normal image type.
@@ -254,7 +254,7 @@ namespace AZ
poolAssetCreator.SetPoolDescriptor(AZStd::move(imagePoolDescriptor));
poolAssetCreator.SetControllerAsset(m_defaultStreamingImageControllerAsset);
poolAssetCreator.SetPoolName(systemStreamingPoolDescriptor.m_name);
const bool created = poolAssetCreator.End(poolAsset);
[[maybe_unused]] const bool created = poolAssetCreator.End(poolAsset);
AZ_Assert(created, "Failed to build streaming image pool");
m_systemStreamingPool = StreamingImagePool::FindOrCreate(poolAsset);
@@ -272,7 +272,7 @@ namespace AZ
poolAssetCreator.SetPoolDescriptor(AZStd::move(imagePoolDescriptor));
poolAssetCreator.SetControllerAsset(m_defaultStreamingImageControllerAsset);
poolAssetCreator.SetPoolName(assetStreamingPoolDescriptor.m_name);
const bool created = poolAssetCreator.End(poolAsset);
[[maybe_unused]] const bool created = poolAssetCreator.End(poolAsset);
AZ_Assert(created, "Failed to build streaming image pool for assets");
m_assetStreamingPool = StreamingImagePool::FindOrCreate(poolAsset);
@@ -292,7 +292,7 @@ namespace AZ
poolAssetCreator.Begin(systemAttachmentPoolDescriptor.m_assetId);
poolAssetCreator.SetPoolDescriptor(AZStd::move(imagePoolDescriptor));
poolAssetCreator.SetPoolName(systemAttachmentPoolDescriptor.m_name);
const bool created = poolAssetCreator.End(poolAsset);
[[maybe_unused]] const bool created = poolAssetCreator.End(poolAsset);
AZ_Assert(created, "Failed to build attachment image pool");
m_systemAttachmentPool = AttachmentImagePool::FindOrCreate(poolAsset);
@@ -88,7 +88,7 @@ namespace AZ
{
if (StreamingImage* image = context->TryGetImage())
{
const RHI::ResultCode resultCode = image->ExpandMipChain();
[[maybe_unused]] const RHI::ResultCode resultCode = image->ExpandMipChain();
AZ_Warning("StreamingImageController", resultCode == RHI::ResultCode::Success, "Failed to expand mip chain for streaming image.");
}
context->m_queuedForMipExpand = false;
@@ -494,6 +494,7 @@ namespace AZ
{
if (query->BeginQuery(context) == QueryResultCode::Fail)
{
AZ_UNUSED(this); // Prevent unused warning in release builds
AZ_WarningOnce("RenderPass", false, "BeginScopeQuery failed. Make sure AddScopeQueryToFrameGraph was called in SetupFrameGraphDependencies"
" for this pass: %s", this->RTTI_GetTypeName());
}
@@ -28,7 +28,7 @@ namespace AZ
static constexpr uint32_t SubProductTypeBitPosition = 0;
static constexpr uint32_t SubProductTypeNumBits = SupervariantIndexBitPosition - SubProductTypeBitPosition;
static constexpr uint32_t SubProductTypeMaxValue = (1 << SubProductTypeNumBits) - 1;
[[maybe_unused]] static constexpr uint32_t SubProductTypeMaxValue = (1 << SubProductTypeNumBits) - 1;
static_assert(RhiIndexMaxValue == RHI::Limits::APIType::PerPlatformApiUniqueIndexMax);
@@ -25,11 +25,11 @@ namespace AZ
{
static constexpr uint32_t SubProductTypeBitPosition = 17;
static constexpr uint32_t SubProductTypeNumBits = SupervariantIndexBitPosition - SubProductTypeBitPosition;
static constexpr uint32_t SubProductTypeMaxValue = (1 << SubProductTypeNumBits) - 1;
[[maybe_unused]] static constexpr uint32_t SubProductTypeMaxValue = (1 << SubProductTypeNumBits) - 1;
static constexpr uint32_t StableIdBitPosition = 0;
static constexpr uint32_t StableIdNumBits = SubProductTypeBitPosition - StableIdBitPosition;
static constexpr uint32_t StableIdMaxValue = (1 << StableIdNumBits) - 1;
[[maybe_unused]] static constexpr uint32_t StableIdMaxValue = (1 << StableIdNumBits) - 1;
static_assert(RhiIndexMaxValue == RHI::Limits::APIType::PerPlatformApiUniqueIndexMax);
@@ -238,6 +238,7 @@ namespace AtomToolsFramework
connectionSettings.m_connectionIdentifier = GetBuildTargetName();
connectionSettings.m_loggingCallback = [targetName]([[maybe_unused]] AZStd::string_view logData)
{
AZ_UNUSED(targetName); // Prevent unused warning in release builds
AZ_TracePrintf(targetName.c_str(), "%.*s", aznumeric_cast<int>(logData.size()), logData.data());
};
AzFramework::AssetSystemRequestBus::BroadcastResult(
@@ -112,7 +112,7 @@ namespace MaterialEditor
requestedViewportSize.width(), requestedViewportSize.height(), m_materialViewport->size().width(),
m_materialViewport->size().height());
QSize newDeviceSize = m_materialViewport->size();
[[maybe_unused]] QSize newDeviceSize = m_materialViewport->size();
AZ_Warning(
"Material Editor", static_cast<uint32_t>(newDeviceSize.width()) == width && static_cast<uint32_t>(newDeviceSize.height()) == height,
"Resizing the window did not give the expected frame size. Requested %d x %d but got %d x %d.", width, height,
@@ -390,7 +390,7 @@ namespace AZ
inline void ImGuiPipelineStatisticsView::CreateAttributeRow(const PassEntry* passEntry, const PassEntry* rootEntry)
{
const uint32_t columnCount = static_cast<uint32_t>(ImGui::GetColumnsCount());
[[maybe_unused]] const uint32_t columnCount = static_cast<uint32_t>(ImGui::GetColumnsCount());
AZ_Assert(columnCount == ImGuiPipelineStatisticsView::HeaderAttributeCount, "The column count needs to match HeaderAttributeCount.");
ImGui::Separator();
@@ -1348,7 +1348,7 @@ namespace AZ
PassEntry entry(pass, parent);
// Set the time stamp in the database.
const auto passEntry = passEntryDatabase.find(entry.m_path);
[[maybe_unused]] const auto passEntry = passEntryDatabase.find(entry.m_path);
AZ_Assert(passEntry == passEntryDatabase.end(), "There already is an entry with the name \"%s\".", entry.m_path.GetCStr());
// Set the entry in the map.
@@ -256,7 +256,7 @@ int AZ::FontRenderer::GetGlyph(GlyphBitmap* glyphBitmap, int* horizontalAdvance,
// might happen if font characters are too big or cache dimenstions in font.xml is too small "<font path="VeraMono.ttf" w="320" h="368"/>"
const bool charWidthFits = static_cast<int>(iX + m_glyph->bitmap.width) <= textureSlotBufferWidth;
const bool charHeightFits = static_cast<int>(iY + m_glyph->bitmap.rows) <= textureSlotBufferHeight;
const bool charFitsInSlot = charWidthFits && charHeightFits;
[[maybe_unused]] const bool charFitsInSlot = charWidthFits && charHeightFits;
AZ_Error("Font", charFitsInSlot, "Character code %d doesn't fit in font texture; check 'sizeRatio' attribute in font XML or adjust this character's sizing in the font.", characterCode);
// Since we might be re-rendering/overwriting a glyph that already exists
@@ -811,7 +811,7 @@ namespace AZ
const uint64_t inputByteOffset = aznumeric_cast<uint64_t>(inputBufferViewDescriptor.m_elementOffset) * aznumeric_cast<uint64_t>(inputBufferViewDescriptor.m_elementSize);
const uint32_t outputElementSize = SkinnedMeshVertexStreamPropertyInterface::Get()->GetOutputStreamInfo(outputStream).m_elementSize;
const uint64_t outputByteCount = aznumeric_cast<uint64_t>(lodVertexCount) * aznumeric_cast<uint64_t>(outputElementSize);
[[maybe_unused]] const uint64_t outputByteCount = aznumeric_cast<uint64_t>(lodVertexCount) * aznumeric_cast<uint64_t>(outputElementSize);
const uint64_t outputByteOffset = aznumeric_cast<uint64_t>(outputBufferOffsetsInBytes[static_cast<uint8_t>(outputStream)]);
// The byte count from input and output buffers doesn't have to match necessarily.
@@ -997,7 +997,7 @@ namespace CommandSystem
else
{
AZStd::string result;
const bool success = GetCommandManager()->ExecuteCommand(AZStd::string::format("Unselect -motionName %s", selectedMotion->GetName()), result);
[[maybe_unused]] const bool success = GetCommandManager()->ExecuteCommand(AZStd::string::format("Unselect -motionName %s", selectedMotion->GetName()), result);
AZ_Error("EMotionFX", success, result.c_str());
}
}
@@ -406,7 +406,7 @@ namespace EMotionFX
for (; iterator != sceneGraphDownardsIteratorView.end(); ++iterator)
{
SceneContainers::SceneGraph::HierarchyStorageConstIterator hierarchy = iterator.GetHierarchyIterator();
SceneContainers::SceneGraph::NodeIndex currentIndex = graph.ConvertToNodeIndex(hierarchy);
[[maybe_unused]] SceneContainers::SceneGraph::NodeIndex currentIndex = graph.ConvertToNodeIndex(hierarchy);
AZ_Assert(currentIndex.IsValid(), "While iterating through the Scene Graph an unexpected invalid entry was found.");
AZStd::shared_ptr<const SceneDataTypes::IGraphObject> currentItem = iterator->second;
if (hierarchy->IsEndPoint())
@@ -728,7 +728,7 @@ namespace EMotionFX
m_localSpaceTransforms[nodeNr].Zero();
}
const size_t numMorphs = m_morphWeights.size();
[[maybe_unused]] const size_t numMorphs = m_morphWeights.size();
MCORE_ASSERT(m_actorInstance->GetMorphSetupInstance()->GetNumMorphTargets() == numMorphs);
for (float& morphWeight : m_morphWeights)
{
@@ -743,7 +743,7 @@ namespace EMotionFX
m_localSpaceTransforms[i].Zero();
}
const size_t numMorphs = m_morphWeights.size();
[[maybe_unused]] const size_t numMorphs = m_morphWeights.size();
MCORE_ASSERT(m_actor->GetMorphSetup(0)->GetNumMorphTargets() == numMorphs);
for (float& morphWeight : m_morphWeights)
{
@@ -454,7 +454,7 @@ namespace EMStudio
// get the actor instance id to which this item belongs to
m_actorInstanceIdString = FromQtString(item->whatsThis(0));
int actorInstanceID;
const bool validConversion = AzFramework::StringFunc::LooksLikeInt(m_actorInstanceIdString.c_str(), &actorInstanceID);
[[maybe_unused]] const bool validConversion = AzFramework::StringFunc::LooksLikeInt(m_actorInstanceIdString.c_str(), &actorInstanceID);
MCORE_ASSERT(validConversion);
// remove the node from the selected nodes
@@ -497,7 +497,7 @@ namespace EMStudio
FromQtString(item->whatsThis(0), &m_actorInstanceIdString);
int actorInstanceID;
const bool validConversion = AzFramework::StringFunc::LooksLikeInt(m_actorInstanceIdString.c_str(), &actorInstanceID);
[[maybe_unused]] const bool validConversion = AzFramework::StringFunc::LooksLikeInt(m_actorInstanceIdString.c_str(), &actorInstanceID);
MCORE_ASSERT(validConversion);
EMotionFX::ActorInstance* actorInstance = EMotionFX::GetActorManager().FindActorInstanceByID(actorInstanceID);
@@ -2077,7 +2077,7 @@ namespace EMStudio
if (visualStateConnection->GetModelIndex() == modelIndex)
{
// Transfer ownership from the previous visual node to where we relinked the transition to.
const bool connectionRemoveResult = visualNode->RemoveConnection(transition, false);
[[maybe_unused]] const bool connectionRemoveResult = visualNode->RemoveConnection(transition, false);
AZ_Error("EMotionFX", connectionRemoveResult, "Removing connection failed.");
targetGraphNode->AddConnection(visualStateConnection);
@@ -280,6 +280,7 @@ namespace GraphModelIntegration
}
else
{
AZ_UNUSED(this); // Prevent unused warning in release builds
AZ_Error(m_graph->GetSystemName(), false, "Failed to load position information for node [%d]", nodeId);
}
+1 -1
View File
@@ -39,6 +39,6 @@ namespace ImGui
private:
////////////////////////////////////////////////////////////////////////////////////////////
ImGuiContext* m_previousContext = nullptr;
[[maybe_unused]] ImGuiContext* m_previousContext = nullptr;
};
}
@@ -131,7 +131,7 @@
-(void) productsRequest:(SKProductsRequest*) request didReceiveResponse:(SKProductsResponse*) response
{
for (NSString* invalidId in response.invalidProductIdentifiers)
for ([[maybe_unused]] NSString* invalidId in response.invalidProductIdentifiers)
{
AZ_TracePrintf("O3DEInAppPurchases:", "Invalid product ID:", [invalidId cStringUsingEncoding:NSASCIIStringEncoding]);
}
@@ -388,11 +388,11 @@ namespace SliceBuilder
bool sliceWritable = AZ::IO::SystemFile::IsWritable(fullPath.c_str());
if (!m_settings.m_enableSliceConversion || !sliceWritable)
{
static const char* const s_OutOfDate = "This slice file is out of date: ";
static const char* const s_ToEnable = "To enable automatic upgrades:";
static const char* const s_FixSettings1 = "In the settings file ";
static const char* const s_FixSettings2 = ", Set 'EnableSliceConversion' to true and restart the Asset Processor";
static const char* const s_FixReadOnly = "Make sure the slice file isn't marked read-only. If using perforce, check out the slice file.";
[[maybe_unused]] static const char* const s_OutOfDate = "This slice file is out of date: ";
[[maybe_unused]] static const char* const s_ToEnable = "To enable automatic upgrades:";
[[maybe_unused]] static const char* const s_FixSettings1 = "In the settings file ";
[[maybe_unused]] static const char* const s_FixSettings2 = ", Set 'EnableSliceConversion' to true and restart the Asset Processor";
[[maybe_unused]] static const char* const s_FixReadOnly = "Make sure the slice file isn't marked read-only. If using perforce, check out the slice file.";
// The Slice isn't marked as read only but Slice Upgrades aren't Enabled in the builder settings file
if(!m_settings.m_enableSliceConversion && sliceWritable)
@@ -512,10 +512,10 @@ namespace SliceBuilder
// To avoid potential data loss, only delete the old file if there is a data patching error detected
if (m_sliceDataPatchError)
{
static const char* const s_overrideWarning = "At least one Data Patch Upgrade wasn't completed:";
static const char* const s_checkLogs = "Please check the slice processing log for more information.";
static const char* const s_originalSliceAvailable = "The original slice file has been preserved at: ";
static const char* const s_recomendReload = "It's recomended that this slice be loaded into the editor and repaired before upgrading.";
[[maybe_unused]] static const char* const s_overrideWarning = "At least one Data Patch Upgrade wasn't completed:";
[[maybe_unused]] static const char* const s_checkLogs = "Please check the slice processing log for more information.";
[[maybe_unused]] static const char* const s_originalSliceAvailable = "The original slice file has been preserved at: ";
[[maybe_unused]] static const char* const s_recomendReload = "It's recomended that this slice be loaded into the editor and repaired before upgrading.";
AZ_Warning(s_sliceBuilder, false, "%s\n%s\n%s%s\n%s", s_overrideWarning, s_checkLogs, s_originalSliceAvailable, oldPath.c_str(), s_recomendReload);
}
@@ -178,8 +178,8 @@ void CUiAnimViewAnimNode::UiElementPropertyChanged()
AZ::Component* oldComponent = oldComponents[componentIndex];
AZ::Component* newComponent = newComponents[componentIndex];
AZ::Uuid oldComponentType = oldComponent->RTTI_GetType();
AZ::Uuid newComponentType = newComponent->RTTI_GetType();
[[maybe_unused]] AZ::Uuid oldComponentType = oldComponent->RTTI_GetType();
[[maybe_unused]] AZ::Uuid newComponentType = newComponent->RTTI_GetType();
AZ_Assert(oldComponentType == newComponentType, "Components have different types");
+4 -4
View File
@@ -39,7 +39,7 @@ AllocateConstIntCVar(LyShineDebug, CV_r_DebugUIDraw2dLine);
AllocateConstIntCVar(LyShineDebug, CV_r_DebugUIDraw2dDefer);
static const int g_numColors = 8;
static const char* g_colorNames[g_numColors] =
[[maybe_unused]] static const char* g_colorNames[g_numColors] =
{
"white",
"red",
@@ -64,7 +64,7 @@ static AZ::Vector3 g_colorVec3[g_numColors] =
};
static const int g_numSrcBlendModes = 11;
static int g_srcBlendModes[g_numSrcBlendModes] =
[[maybe_unused]] static int g_srcBlendModes[g_numSrcBlendModes] =
{
GS_BLSRC_ZERO,
GS_BLSRC_ONE,
@@ -80,7 +80,7 @@ static int g_srcBlendModes[g_numSrcBlendModes] =
};
static const int g_numDstBlendModes = 10;
static int g_dstBlendModes[g_numDstBlendModes] =
[[maybe_unused]] static int g_dstBlendModes[g_numDstBlendModes] =
{
GS_BLDST_ZERO,
GS_BLDST_ONE,
@@ -94,7 +94,7 @@ static int g_dstBlendModes[g_numDstBlendModes] =
GS_BLDST_ONEMINUSSRC1ALPHA, // dual source blending
};
static bool g_deferDrawsToEndOfFrame = false;
[[maybe_unused]] static bool g_deferDrawsToEndOfFrame = false;
////////////////////////////////////////////////////////////////////////////////////////////////////
// LOCAL STATIC FUNCTIONS
@@ -146,7 +146,7 @@ namespace Maestro
AZ::EntityId sequenceEntityId = busIdToDisconnect->first;
// we only process DisconnectSequence events sent over an ID'ed bus - otherwise we don't know which SequenceComponent to disconnect
auto findIter = m_sequenceEntityIds.find(sequenceEntityId);
[[maybe_unused]] auto findIter = m_sequenceEntityIds.find(sequenceEntityId);
AZ_Assert(findIter != m_sequenceEntityIds.end(), "A sequence not connected to SequenceAgentComponent on %s is requesting a disconnection", GetEntity()->GetName().c_str());
m_sequenceEntityIds.erase(sequenceEntityId);
@@ -74,7 +74,7 @@ namespace Maestro
AZ::EntityId sequenceEntityId = busIdToDisconnect->first;
// we only process DisconnectSequence events sent over an ID'ed bus - otherwise we don't know which SequenceComponent to disconnect
auto findIter = m_sequenceEntityIds.find(sequenceEntityId);
[[maybe_unused]] auto findIter = m_sequenceEntityIds.find(sequenceEntityId);
AZ_Assert(findIter != m_sequenceEntityIds.end(), "A sequence not connected to SequenceAgentComponent on %s is requesting a disconnection", GetEntity()->GetName().c_str());
m_sequenceEntityIds.erase(sequenceEntityId);
@@ -53,8 +53,8 @@ namespace Multiplayer
AZStd::map<AZ::EntityId, MultiplayerDebugEntityReporter> m_receivingEntityReports{};
MultiplayerDebugEntityReporter m_currentReceivingEntityReport;
float m_replicatedStateKbpsWarn = 10.f;
float m_replicatedStateMaxSizeWarn = 30.f;
[[maybe_unused]] float m_replicatedStateKbpsWarn = 10.f;
[[maybe_unused]] float m_replicatedStateMaxSizeWarn = 30.f;
char m_statusBuffer[100] = {};
@@ -53,7 +53,7 @@ TEST_F(MultiplayerCompressionTest, MultiplayerCompression_CompressTest)
MultiplayerCompression::LZ4Compressor lz4Compressor;
startTime = AZStd::chrono::system_clock::now();
AzNetworking::CompressorError compressStatus = lz4Compressor.Compress(buffer.GetBuffer(), buffer.GetSize(), pCompressedBuffer, maxCompressedSize, compressedSize);
const AZ::u64 compressTime = (AZStd::chrono::system_clock::now() - startTime).count();
[[maybe_unused]] const AZ::u64 compressTime = (AZStd::chrono::system_clock::now() - startTime).count();
ASSERT_TRUE(compressStatus == AzNetworking::CompressorError::Ok);
EXPECT_TRUE(compressedSize < maxCompressedSize);
@@ -61,7 +61,7 @@ TEST_F(MultiplayerCompressionTest, MultiplayerCompression_CompressTest)
//Run and test decompress
startTime = AZStd::chrono::system_clock::now();
AzNetworking::CompressorError decompressStatus = lz4Compressor.Decompress(pCompressedBuffer, compressedSize, pDecompressedBuffer, buffer.GetSize(), consumedSize, uncompressedSize);
const AZ::u64 decompressTime = (AZStd::chrono::system_clock::now() - startTime).count();
[[maybe_unused]] const AZ::u64 decompressTime = (AZStd::chrono::system_clock::now() - startTime).count();
ASSERT_TRUE(decompressStatus == AzNetworking::CompressorError::Ok);
EXPECT_TRUE(uncompressedSize = buffer.GetSize());
+1 -1
View File
@@ -43,7 +43,7 @@ namespace PhysX
void DisconnectFromPvd() override;
private:
physx::PxPvdTransport* m_pvdTransport = nullptr;
[[maybe_unused]] physx::PxPvdTransport* m_pvdTransport = nullptr;
physx::PxPvd* m_pvd = nullptr;
DebugConfiguration m_config;
+2 -2
View File
@@ -182,7 +182,7 @@ namespace PhysX
SimulatedBodyType* newBody = aznew SimulatedBodyType(*configuration);
if (!AZStd::holds_alternative<AZStd::monostate>(configuration->m_colliderAndShapeData))
{
const bool shapeAdded = AddShape(newBody, configuration->m_colliderAndShapeData);
[[maybe_unused]] const bool shapeAdded = AddShape(newBody, configuration->m_colliderAndShapeData);
AZ_Warning("PhysXScene", shapeAdded, "No Collider or Shape information found when creating Rigid body [%s]", configuration->m_debugName.c_str());
}
crc = AZ::Crc32(newBody, sizeof(*newBody));
@@ -194,7 +194,7 @@ namespace PhysX
RigidBody* newBody = aznew RigidBody(*configuration);
if (!AZStd::holds_alternative<AZStd::monostate>(configuration->m_colliderAndShapeData))
{
const bool shapeAdded = AddShape(newBody, configuration->m_colliderAndShapeData);
[[maybe_unused]] const bool shapeAdded = AddShape(newBody, configuration->m_colliderAndShapeData);
AZ_Warning("PhysXScene", shapeAdded, "No Collider or Shape information found when creating Rigid body [%s]", configuration->m_debugName.c_str());
}
const AzPhysics::MassComputeFlags& flags = configuration->GetMassComputeFlags();
@@ -171,7 +171,7 @@ namespace SceneLoggingExample
{
// While it's generally preferable to stick with either index- or iterator-based traversal, there may be times where switching between one
// or the other becomes necessary. The SceneGraph provides utility functions to convert between the two approaches.
AZ::SceneAPI::Containers::SceneGraph::NodeIndex itNodeIndex = graph.ConvertToNodeIndex(it.GetHierarchyIterator());
[[maybe_unused]] AZ::SceneAPI::Containers::SceneGraph::NodeIndex itNodeIndex = graph.ConvertToNodeIndex(it.GetHierarchyIterator());
// Nodes in the SceneGraph can be marked as endpoints. To the graph, this means that these nodes are not allowed to have children.
// While not a true one-to-one mapping, endpoints often act as attributes to a node. For example, a transform can be marked as an endpoint.
@@ -2885,7 +2885,7 @@ namespace ScriptCanvas
if (node == nullptr)
{
AZStd::string assetName = m_graphRequestBus->GetAssetName();
AZ::EntityId assetNodeId = m_graphRequestBus->FindAssetNodeIdByRuntimeNodeId(endpoint.GetNodeId());
[[maybe_unused]] AZ::EntityId assetNodeId = m_graphRequestBus->FindAssetNodeIdByRuntimeNodeId(endpoint.GetNodeId());
AZ_Warning("Script Canvas", false, "Unable to find node with id (id: %s) in the graph '%s'. Most likely the node was serialized with a type that is no longer reflected",
assetNodeId.ToString().data(), assetName.data());
@@ -2900,7 +2900,7 @@ namespace ScriptCanvas
if (!endpointSlot)
{
AZStd::string assetName = m_graphRequestBus->GetAssetName();
AZ::EntityId assetNodeId = m_graphRequestBus->FindAssetNodeIdByRuntimeNodeId(endpoint.GetNodeId());
[[maybe_unused]] AZ::EntityId assetNodeId = m_graphRequestBus->FindAssetNodeIdByRuntimeNodeId(endpoint.GetNodeId());
AZ_Warning("Script Canvas", false, "Endpoint was missing slot. id (id: %s) in the graph '%s'.",
assetNodeId.ToString().data(), assetName.data());
@@ -2934,7 +2934,7 @@ namespace ScriptCanvas
if (node == nullptr)
{
AZStd::string assetName = m_graphRequestBus->GetAssetName();
AZ::EntityId assetNodeId = m_graphRequestBus->FindAssetNodeIdByRuntimeNodeId(endpoint.GetNodeId());
[[maybe_unused]] AZ::EntityId assetNodeId = m_graphRequestBus->FindAssetNodeIdByRuntimeNodeId(endpoint.GetNodeId());
AZ_Error("Script Canvas", false, "Unable to find node with id (id: %s) in the graph '%s'. Most likely the node was serialized with a type that is no longer reflected",
assetNodeId.ToString().data(), assetName.data());
@@ -549,7 +549,7 @@ namespace ScriptCanvas
{
using namespace ExecutionInterpretedAPICpp;
// Lua: usernodeable, keyCount
const int argsCount = lua_gettop(lua);
[[maybe_unused]] const int argsCount = lua_gettop(lua);
AZ_Assert(argsCount == 2, "InitializeNodeableOutKeys: Error in compiled Lua file, not enough arguments");
AZ_Assert(lua_isuserdata(lua, 1), "InitializeNodeableOutKeys: Error in compiled lua file, 1st argument to SetExecutionOut is not userdata (Nodeable)");
Nodeable* nodeable = AZ::ScriptValue<Nodeable*>::StackRead(lua, 1);
@@ -23,7 +23,7 @@ namespace ScriptCanvas
{
auto nodeCallWrapper = [callable = AZStd::forward<Callable>(callable)](AZ::BehaviorValueParameter* result, AZ::BehaviorValueParameter* arguments, int numArguments) mutable
{
constexpr size_t numFunctorArguments = sizeof...(Args);
[[maybe_unused]] constexpr size_t numFunctorArguments = sizeof...(Args);
(void)numArguments;
AZ_Assert(numArguments == numFunctorArguments, "number of arguments doesn't match number of parameters");
AZ_Assert(result, "no null result allowed");
@@ -39,7 +39,7 @@ namespace ScriptCanvas
{
auto nodeCallWrapper = [callable = AZStd::forward<Callable>(callable)](AZ::BehaviorValueParameter*, AZ::BehaviorValueParameter* arguments, int numArguments) mutable
{
constexpr size_t numFunctorArguments = sizeof...(Args);
[[maybe_unused]] constexpr size_t numFunctorArguments = sizeof...(Args);
(void)numArguments;
AZ_Assert(numArguments == numFunctorArguments, "number of arguments doesn't match number of parameters");
AZStd::invoke(callable, *arguments[IndexSequence].GetAsUnsafe<Args>()...);
@@ -45,7 +45,7 @@ namespace ScriptCanvas
int tupleGetFuncIndex = -1;
if (tupleGetFuncAttrReader.Read<int>(tupleGetFuncIndex))
{
auto insertIter = tupleGetMethodMap.emplace(tupleGetFuncIndex, behaviorMethod);
[[maybe_unused]] auto insertIter = tupleGetMethodMap.emplace(tupleGetFuncIndex, behaviorMethod);
AZ_Error("Script Canvas", insertIter.second, "Multiple methods with the same TupleGetFunctionIndex attribute"
"has been registered for the class name: %s with typeid: %s",
behaviorClass->m_name.data(), behaviorClass->m_typeId.ToString<AZStd::string>().data())
@@ -260,7 +260,7 @@ namespace ScriptCanvas
}
LockType lock(m_ownedObjectsByAddressMutex);
auto emplaceResult = m_ownedObjectsByAddress.emplace(object, behaviorContextObject);
[[maybe_unused]] auto emplaceResult = m_ownedObjectsByAddress.emplace(object, behaviorContextObject);
AZ_Assert(emplaceResult.second, "Adding second owned reference to memory");
}