mirror of git://gcc.gnu.org/git/gcc.git
				
				
				
			re PR c++/86546 (ICE on invalid: tree_class_check_failed())
/cp 2018-08-28 Paolo Carlini <paolo.carlini@oracle.com> PR c++/86546 * decl.c (finish_case_label): If the type is erroneous early return error_mark_node. /testsuite 2018-08-28 Paolo Carlini <paolo.carlini@oracle.com> PR c++/86546 * g++.dg/other/switch4.C: New. From-SVN: r263921
This commit is contained in:
		
							parent
							
								
									1978408086
								
							
						
					
					
						commit
						f30bafb7fc
					
				|  | @ -1,3 +1,9 @@ | |||
| 2018-08-28  Paolo Carlini  <paolo.carlini@oracle.com> | ||||
| 
 | ||||
| 	PR c++/86546 | ||||
| 	* decl.c (finish_case_label): If the type is erroneous early | ||||
| 	return error_mark_node. | ||||
| 
 | ||||
| 2018-08-27  David Malcolm  <dmalcolm@redhat.com> | ||||
| 
 | ||||
| 	PR c++/63392 | ||||
|  |  | |||
|  | @ -3662,6 +3662,8 @@ finish_case_label (location_t loc, tree low_value, tree high_value) | |||
|     return error_mark_node; | ||||
| 
 | ||||
|   type = SWITCH_STMT_TYPE (switch_stack->switch_stmt); | ||||
|   if (type == error_mark_node) | ||||
|     return error_mark_node; | ||||
| 
 | ||||
|   low_value = case_conversion (type, low_value); | ||||
|   high_value = case_conversion (type, high_value); | ||||
|  |  | |||
|  | @ -1,3 +1,8 @@ | |||
| 2018-08-28  Paolo Carlini  <paolo.carlini@oracle.com> | ||||
| 
 | ||||
| 	PR c++/86546 | ||||
| 	* g++.dg/other/switch4.C: New. | ||||
| 
 | ||||
| 2018-08-28  Richard Biener  <rguenther@suse.de> | ||||
| 
 | ||||
| 	PR tree-optimization/87124 | ||||
|  |  | |||
|  | @ -0,0 +1,6 @@ | |||
| // PR c++/86546
 | ||||
| 
 | ||||
| class a b;  // { dg-error "aggregate" }
 | ||||
| void c() { | ||||
|   switch ()  // { dg-error "expected" }
 | ||||
|   case b  // { dg-error "expected" }
 | ||||
		Loading…
	
		Reference in New Issue
	
	 Paolo Carlini
						Paolo Carlini