
Inline adoc files when they are included exactly once. Also fix language tags because this inlining gives us better information on what language the code is written in.
45 lines
855 B
Plaintext
45 lines
855 B
Plaintext
== Why is this an issue?
|
|
|
|
Any statement or block of statements can be identified by a label, but those labels should be used only on ``++while++``, ``++do-while++`` and ``++for++`` statements. Using labels in any other context leads to unstructured, confusing code.
|
|
|
|
|
|
=== Noncompliant code example
|
|
|
|
[source,flex]
|
|
----
|
|
myLabel:if (i % 2 == 0) { // Noncompliant
|
|
if (i == 12) {
|
|
print("12");
|
|
break myLabel;
|
|
}
|
|
print("Odd number, but not 12");
|
|
}
|
|
----
|
|
|
|
|
|
=== Compliant solution
|
|
|
|
[source,flex]
|
|
----
|
|
myLabel:for (i = 0; i < 10; i++) { // Compliant
|
|
print("Loop");
|
|
break myLabel;
|
|
}
|
|
----
|
|
|
|
|
|
ifdef::env-github,rspecator-view[]
|
|
|
|
'''
|
|
== Implementation Specification
|
|
(visible only on this page)
|
|
|
|
include::../message.adoc[]
|
|
|
|
'''
|
|
== Comments And Links
|
|
(visible only on this page)
|
|
|
|
include::../comments-and-links.adoc[]
|
|
endif::env-github,rspecator-view[]
|