[#BloombergLP-bsls-Review-failByThrow]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bsls.adoc[bsls]::xref:BloombergLP/bsls/Review.adoc[Review]::failByThrow
:relfileprefix: ../../../
:mrdocs:

Throw an exception describing the specified review violation&period;

== Synopsis

Declared in `&lt;bsls&lowbar;review&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lsqb;&lsqb;noreturn&rsqb;&rsqb;
static
void
failByThrow(xref:BloombergLP/bsls/ReviewViolation.adoc[ReviewViolation] const& violation);
----

== Description

Throw an `AssertTestException` (whose attributes are `comment`, `filename`, and `lineNumber` from the specified `violation`), provided that `BDE&lowbar;BUILD&lowbar;TARGET&lowbar;EXC` is defined&semi; otherwise, log an appropriate message and abort the program (similar to `failByAbort`)&period;

== Return Value

[NOTE]
====
This function https://en.cppreference.com/cpp/language/attributes/noreturn[does not return^].
====
== Parameters

[cols="1,4"]
|===
| Name| Description
| *violation*
| details of the failed review
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
