File tree Expand file tree Collapse file tree 2 files changed +28
-0
lines changed Expand file tree Collapse file tree 2 files changed +28
-0
lines changed Original file line number Diff line number Diff line change @@ -2730,6 +2730,11 @@ parse_statement (jsp_label_t *outermost_stmt_label_p) /**< outermost (first) lab
2730
2730
}
2731
2731
if (is_keyword (KW_RETURN))
2732
2732
{
2733
+ if (!inside_function)
2734
+ {
2735
+ EMIT_ERROR (" Return is illegal" );
2736
+ }
2737
+
2733
2738
skip_token ();
2734
2739
if (!token_is (TOK_SEMICOLON) && !token_is (TOK_NEWLINE))
2735
2740
{
Original file line number Diff line number Diff line change
1
+ // Copyright 2015 Samsung Electronics Co., Ltd.
2
+ // Copyright 2015 University of Szeged.
3
+ //
4
+ // Licensed under the Apache License, Version 2.0 (the "License");
5
+ // you may not use this file except in compliance with the License.
6
+ // You may obtain a copy of the License at
7
+ //
8
+ // http://www.apache.org/licenses/LICENSE-2.0
9
+ //
10
+ // Unless required by applicable law or agreed to in writing, software
11
+ // distributed under the License is distributed on an "AS IS" BASIS
12
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ // See the License for the specific language governing permissions and
14
+ // limitations under the License.
15
+
16
+ try {
17
+ eval ( "do { \
18
+ return null; \
19
+ } while (false);" ) ;
20
+ assert ( false ) ;
21
+ } catch ( e ) {
22
+ assert ( e instanceof SyntaxError ) ;
23
+ }
You can’t perform that action at this time.
0 commit comments