]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/warn-scheme.cc
Release: bump Welcome versions.
[lilypond.git] / lily / warn-scheme.cc
index 2f7a1af611f0f442c7577b589f010130a3dab27e..cd9efc9ad4014abb410bf10ec047de8bca40f3a1 100644 (file)
@@ -1,7 +1,7 @@
 /*
   This file is part of LilyPond, the GNU music typesetter.
 
-  Copyright (C) 1998--2011 Jan Nieuwenhuizen <janneke@gnu.org>
+  Copyright (C) 1998--2015 Jan Nieuwenhuizen <janneke@gnu.org>
   Han-Wen Nienhuys <hanwen@xs4all.nl>
 
   LilyPond is free software: you can redistribute it and/or modify
@@ -49,12 +49,7 @@ LY_DEFINE (ly_programming_error, "ly:programming-error",
 {
   LY_ASSERT_TYPE (scm_is_string, str, 1);
   str = scm_simple_format (SCM_BOOL_F, str, rest);
-
-  if (get_program_option ("warning-as-error"))
-    error (ly_scm2string (str));
-  else
-    programming_error (ly_scm2string (str));
-
+  programming_error (ly_scm2string (str));
   return SCM_UNSPECIFIED;
 }
 
@@ -65,12 +60,7 @@ LY_DEFINE (ly_warning, "ly:warning",
 {
   LY_ASSERT_TYPE (scm_is_string, str, 1);
   str = scm_simple_format (SCM_BOOL_F, str, rest);
-
-  if (get_program_option ("warning-as-error"))
-    error (ly_scm2string (str));
-  else
-    warning (ly_scm2string (str));
-
+  warning (ly_scm2string (str));
   return SCM_UNSPECIFIED;
 }
 
@@ -129,12 +119,7 @@ LY_DEFINE (ly_warning_located, "ly:warning-located",
   LY_ASSERT_TYPE (scm_is_string, location, 1);
   LY_ASSERT_TYPE (scm_is_string, str, 2);
   str = scm_simple_format (SCM_BOOL_F, str, rest);
-
-  if (get_program_option ("warning-as-error"))
-    error (ly_scm2string (str), ly_scm2string (location));
-  else
-    warning (ly_scm2string (str), ly_scm2string (location));
-
+  warning (ly_scm2string (str), ly_scm2string (location));
   return SCM_UNSPECIFIED;
 }
 
@@ -142,7 +127,7 @@ LY_DEFINE (ly_expect_warning, "ly:expect-warning",
            1, 0, 1, (SCM str, SCM rest),
            "A Scheme callable function to register a warning to be expected"
            " and subsequently suppressed.  If the warning is not encountered,"
-           " a warning about the missing warning will be shown. The message"
+           " a warning about the missing warning will be shown.  The message"
            " should be translated with @code{(_ ...)} and changing parameters"
            " given after the format string.")
 {
@@ -167,7 +152,7 @@ LY_DEFINE (ly_translate_cpp_warning_scheme, "ly:translate-cpp-warning-scheme",
 {
   LY_ASSERT_TYPE (scm_is_string, str, 1);
   string s = _ (ly_scm2string (str).c_str ());
-  
+
   /* Now replace all printf placeholders by scheme placeholders (~a).
    * Guile's format syntax is pretty similar to C's printf, only with
    * a tilde as the placeholder instead of a percent sign.
@@ -182,27 +167,32 @@ LY_DEFINE (ly_translate_cpp_warning_scheme, "ly:translate-cpp-warning-scheme",
       // In some cases (%%, %s) we need to do a lookahead. As the C string is
       // always \0-terminated the next char is never beyond the end of the
       // memory!
-      switch (*pos) {
+      switch (*pos)
+        {
         case '~':
           result += "~~";
           break;
         case '%':
-          if (*(pos+1) == '%') {
-            result += "%";
-            // Skip the second '%'
-            pos++;
-          } else if (*(pos+1) == 's' || *(pos+1) == 'd') {
-            // %s in C++ corresponds to ~a; ~s would add quotes!
-            // ~d is only supported by ice-9, use ~a instead
-            result += "~a";
-            // Skip the following 's'
-            pos++;
-          } else
+          if (*(pos + 1) == '%')
+            {
+              result += "%";
+              // Skip the second '%'
+              pos++;
+            }
+          else if (*(pos + 1) == 's' || *(pos + 1) == 'd')
+            {
+              // %s in C++ corresponds to ~a; ~s would add quotes!
+              // ~d is only supported by ice-9, use ~a instead
+              result += "~a";
+              // Skip the following 's'
+              pos++;
+            }
+          else
             result += "~";
           break;
         default:
           result += *pos;
-      }
+        }
       pos++;
     }
   return ly_string2scm (result);