* New test case tests that %attribute macros correctly supports passing
template with multiple parameters as class name or attribute type name
* Some further changes were made to %attribute macros - now
AttributeType is protected with %arg as well. This allows you
to have attributes of type e.g. std::pair<int,int> etc
Update CHANGES file for %attribute template fixes
Closes#48
Rewinding the file before passing it to C fixed the problem of not being
able to read the file contents.
Also explain the error about writing to a string.
Fixes SF bug 1319 which shows up as a failure in the ccache tests on
Debian 64 bit Wheezy, possibly because ENABLE_ZLIB is defined.
This bug is due to files being too aggressively cleaned up part way
through the caching. The .stderr file is cached and then retrieved
from the cache for displaying to stderr. However, the stats are updated
between caching and using the .stderr file. During the stats update the
cache is cleaned and the newly cached files can be removed if the max
number of files per directory is low. Really the cache should be cleaned
up at exit to solve this (as is done in ccache-3.1). The workaround fix
ensures the cached files are ignored during cleanup, which is a bit
tricky as sometimes files from a previous run have the same time stamp,
so that don't appear to be the oldest in the cache.
Note: Best to use the patched source from Ubuntu/Debian which fixes some
bugs.
Also added "Patched with margin-left.patch" text to output of
htmldoc --version
- once installed, Octave functions can never really be uninstalled
(clear -f doesn't prevent the function being called again), so
it makes no sense to install functions more than once
- this can lead to a significant speed-up of module loading times,
up to a factor of 10 for a large module loaded multiple times
- this introduces a memory leak, which becomes significant for large
modules (many global variables) and many module re-loadings (e.g.
during a long-running script)
- the original motivation was to prevent double-frees on exit, but this
problem appears to have been fixed by the _Exit() hack in later commits,
and in any case is an issue only for Octave ~3.2, so it should be safe to
remove; tested by running Octave examples/test suite with Debian 3.2.4 and
built-from-source 3.2.4, 3.4.3, and 3.6.3
- Now Guile examples are built in a consistent way to other target
languages.
- Also set GUILE_AUTO_COMPILE=0 to remove auto-compilation is enabled
warnings
Use new guile_embedded_run target or guile_run target for running the
examples like the other target languages (for suppressing stdout if run
from top level).
Consistency with other target language file renames: use runme.scm for
scripts and example.i, example.c for example code.
Add class example to examples being tested.
- rename example modules from "example" to "swigexample", to avoid a
warning from shadowing the Octave built-in function "example"
- remove deprecated "static" Makefile targets: there is no longer
an option to build static Octave modules in the Examples Makefile
- emacs whitespace cleanup run on all files