comparison src/error.cc @ 3811:855bf76e1fe1

[project @ 2001-04-18 03:44:30 by jwe]
author jwe
date Wed, 18 Apr 2001 03:44:31 +0000
parents 0ac9388e7e1f
children c554ad71bafc
comparison
equal deleted inserted replaced
3810:f19f00339363 3811:855bf76e1fe1
66 // Tell the error handler whether to print messages, or just store 66 // Tell the error handler whether to print messages, or just store
67 // them for later. Used for handling errors in eval() and 67 // them for later. Used for handling errors in eval() and
68 // the `unwind_protect' statement. 68 // the `unwind_protect' statement.
69 bool buffer_error_messages = false; 69 bool buffer_error_messages = false;
70 70
71 // The message buffer 71 // The message buffer.
72 std::ostrstream *error_message_buffer = 0; 72 static std::ostrstream *error_message_buffer = 0;
73 73
74 // Warning messages are never buffered. 74 // Warning messages are never buffered.
75 // XXX FIXME XXX -- we should provide another way to turn them off... 75 // XXX FIXME XXX -- we should provide another way to turn them off...
76 76
77 static void 77 static void
533 { 533 {
534 *error_message_buffer << std::ends; 534 *error_message_buffer << std::ends;
535 535
536 char *error_text = error_message_buffer->str (); 536 char *error_text = error_message_buffer->str ();
537 537
538 bind_builtin_constant ("__error_text__", error_text, true); 538 bind_builtin_variable ("__error_text__", error_text, true);
539 539
540 delete [] error_text; 540 delete [] error_text;
541 541
542 delete error_message_buffer; 542 delete error_message_buffer;
543 543
544 error_message_buffer = 0; 544 error_message_buffer = 0;
545 } 545 }
546 else 546 else
547 bind_builtin_constant ("__error_text__", "", true); 547 bind_builtin_variable ("__error_text__", "", true);
548 } 548 }
549 549
550 void 550 void
551 clear_global_error_variable (void *) 551 clear_global_error_variable (void *)
552 { 552 {
553 delete error_message_buffer; 553 delete error_message_buffer;
554
554 error_message_buffer = 0; 555 error_message_buffer = 0;
555 556
556 bind_builtin_constant ("__error_text__", "", true); 557 bind_builtin_variable ("__error_text__", "", true);
557 } 558 }
558 559
559 static int 560 static int
560 beep_on_error (void) 561 beep_on_error (void)
561 { 562 {