diff -Naur b/ChangeLog a/ChangeLog --- b/ChangeLog 2009-03-18 09:55:35.725405537 +0100 +++ a/ChangeLog 2009-03-18 09:53:45.928750429 +0100 @@ -1,3 +1,9 @@ +2008-10-10 Jaroslav Hajek + + * sparse-util.h (SparseCholPrint): Change char * argument to const + char *. + * sparse-util.cc (SparseCholPrint): Likewise. + 2008-09-24 Jaroslav Hajek Version 3.0.3 released. diff -Naur b/liboctave/sparse-util.cc a/liboctave/sparse-util.cc --- b/liboctave/sparse-util.cc 2009-03-18 09:55:56.752069815 +0100 +++ a/liboctave/sparse-util.cc 2009-03-18 09:53:45.928750429 +0100 @@ -30,9 +30,16 @@ #include "lo-error.h" #include "sparse-util.h" +// FIXME this overload is here due to API change in SuiteSparse (3.1 -> 3.2) void SparseCholError (int status, char *file, int line, char *message) { + SparseCholError (status, file, line, message); +} + +void +SparseCholError (int status, const char *file, int line, const char *message) +{ (*current_liboctave_warning_handler)("warning %i, at line %i in file %s", status, line, file); diff -Naur b/liboctave/sparse-util.h a/liboctave/sparse-util.h --- b/liboctave/sparse-util.h 2009-03-18 09:55:56.752069815 +0100 +++ a/liboctave/sparse-util.h 2009-03-18 09:53:45.928750429 +0100 @@ -24,7 +24,11 @@ #if !defined (octave_sparse_util_h) #define octave_sparse_util_h 1 -extern OCTAVE_API void SparseCholError (int status, char *file, int line, char *message); +// FIXME this overload is here due to API change in SuiteSparse (3.1 -> 3.2) +extern OCTAVE_API void SparseCholError (int status, char *file, + int line, char *message); +extern OCTAVE_API void SparseCholError (int status, const char *file, + int line, const char *message); extern OCTAVE_API int SparseCholPrint (const char *fmt, ...); #endif