Don't evaluate inside a "throw"
Workaround for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=41174. This caused hydra-eval-jobs to ignore SIGINT.
This commit is contained in:
		
							parent
							
								
									0cd6596b0e
								
							
						
					
					
						commit
						53b044c2f6
					
				
					 1 changed files with 4 additions and 3 deletions
				
			
		|  | @ -333,15 +333,16 @@ static void prim_genericClosure(EvalState & state, const Pos & pos, Value * * ar | ||||||
| static void prim_abort(EvalState & state, const Pos & pos, Value * * args, Value & v) | static void prim_abort(EvalState & state, const Pos & pos, Value * * args, Value & v) | ||||||
| { | { | ||||||
|     PathSet context; |     PathSet context; | ||||||
|     throw Abort(format("evaluation aborted with the following error message: ‘%1%’") % |     string s = state.coerceToString(pos, *args[0], context); | ||||||
|         state.coerceToString(pos, *args[0], context)); |     throw Abort(format("evaluation aborted with the following error message: ‘%1%’") % s); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| static void prim_throw(EvalState & state, const Pos & pos, Value * * args, Value & v) | static void prim_throw(EvalState & state, const Pos & pos, Value * * args, Value & v) | ||||||
| { | { | ||||||
|     PathSet context; |     PathSet context; | ||||||
|     throw ThrownError(format("%1%") % state.coerceToString(pos, *args[0], context)); |     string s = state.coerceToString(pos, *args[0], context); | ||||||
|  |     throw ThrownError(s); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue