Index: common/gdsassert.h
===================================================================
--- common/gdsassert.h	(revision 57762)
+++ common/gdsassert.h	(working copy)
@@ -62,6 +62,10 @@
 			abort();	\
 		}	\
 	} while (false)
+
+#define fb_verify(code)	\
+	fb_assert(code)
+
 #endif
 
 #else	// DEV_BUILD
@@ -69,6 +73,9 @@
 #define fb_assert(ex)				// nothing
 #define fb_assert_continue(ex)		// nothing
 
+#define fb_verify(code)	\
+	{code;}
+
 #endif // DEV_BUILD
 
 namespace DtorException {
Index: dsql/DsqlCompilerScratch.cpp
===================================================================
--- dsql/DsqlCompilerScratch.cpp	(revision 57762)
+++ dsql/DsqlCompilerScratch.cpp	(working copy)
@@ -822,8 +822,10 @@
 				dstTables->items.pop();
 			}
 		}
-		else if (!(*pDstTable)->is<SelectExprNode>())
-			fb_assert(false);
+		else
+        {
+			fb_assert((*pDstTable)->is<SelectExprNode>());
+        }
 	}
 
 	if (found)
Index: jrd/DatabaseSnapshot.cpp
===================================================================
--- jrd/DatabaseSnapshot.cpp	(revision 57762)
+++ jrd/DatabaseSnapshot.cpp	(working copy)
@@ -712,16 +712,14 @@
 		bid* blob_id = reinterpret_cast<bid*>(to_desc.dsc_address);
 		jrd_tra* tran = tdbb->getTransaction();
 
-		if (!tran->tra_blobs->locate(blob_id->bid_temp_id()))
-			fb_assert(false);
+		fb_verify(tran->tra_blobs->locate(blob_id->bid_temp_id()));
 
 		BlobIndex& blobIdx = tran->tra_blobs->current();
 		fb_assert(!blobIdx.bli_materialized);
 
 		if (blobIdx.bli_request)
 		{
-			if (!blobIdx.bli_request->req_blobs.locate(blobIdx.bli_temp_id))
-				fb_assert(false);
+			fb_verify(blobIdx.bli_request->req_blobs.locate(blobIdx.bli_temp_id));
 
 			blobIdx.bli_request->req_blobs.fastRemove();
 			blobIdx.bli_request = NULL;
Index: jrd/TempSpace.cpp
===================================================================
--- jrd/TempSpace.cpp	(revision 57762)
+++ jrd/TempSpace.cpp	(working copy)
@@ -454,8 +454,7 @@
 	// If the hunk was an exact fit, remove the segment from the list
 	if (!best->size)
 	{
-		if (!freeSegments.locate(best->position))
-			fb_assert(false);
+		fb_verify(freeSegments.locate(best->position));
 
 		freeSegments.fastRemove();
 	}
@@ -631,11 +630,9 @@
 				freeSpace->size -= skip_size;
 				fb_assert(freeSpace->size != 0);
 
-				if (!freeSegments.add(skip_space))
-					fb_assert(false);
+				fb_verify(freeSegments.add(skip_space));
 
-				if (!freeSegments.locate(skip_space.position + skip_size))
-					fb_assert(false);
+				fb_verify(freeSegments.locate(skip_space.position + skip_size));
 
 				freeSpace = &freeSegments.current();
 			}
Index: remote/client/interface.cpp
===================================================================
--- remote/client/interface.cpp	(revision 57762)
+++ remote/client/interface.cpp	(working copy)
@@ -2314,8 +2314,7 @@
 		}
 		else
 		{
-			if (response->p_resp_object)
-				fb_assert(false);
+			fb_assert(response->p_resp_object == 0);
 		}
 		response->p_resp_data = temp;
 
