GOOPS doc fix: #:dsupers is the init keyword for the dsupers slot.

* doc/ref/goops.texi (Metaclasses): #:dsupers is the initialization
  keyword for the dsupers slot, not #:supers.
Fix brainfuck->scheme compiler.

* module/language/brainfuck/compile-scheme.scm (compile-scheme): Fix
  brainfuck compiler.
Fix brainfuck comment

* module/language/brainfuck/parse.scm: Fix outdated comment.
compiler.texi tweaks

* doc/ref/compiler.texi (Compiler Tower): Reword a couple things.
  (Tree-IL): Add more vertical space, for readability in info.
vm: Gracefully handle stack overflows.

Fixes <http://lists.gnu.org/archive/html/guile-user/2013-12/msg00017.html>.
Reported by rvclayton@verizon.net (R. Clayton).

* libguile/vm.c (reinstate_stack_reserve): New function.
  (vm_error_stack_overflow): Install it as an unwind handler.
* test-suite/tests/control.test ("the-vm")["stack overflow reinstates
  stack reserve"]: New test.
(call-with-values foo (lambda (a . b) a)) avoids consing rest list

* module/language/cps/slot-allocation.scm (allocate-slots): Don't
  allocate slots to unused results of function calls.  This can allow us
  to avoid consing a rest list for call-with-values with an ignored rest
  parameter, and can improve the parallel move code.

* module/language/cps/compile-bytecode.scm (compile-fun): Adapt to avoid
  emitting bind-rest in values context if the rest arg is unused.
Elide values primcalls with continuations with rest arguments

* module/language/cps/elide-values.scm (elide-values): Elide values
  primcalls when continuation has rest arguments.
Arities-fixing pass handles incoming $ktrunc with rest args

* module/language/cps/arities.scm (fix-clause-arities): Allow $ktrunc
  arities with rest arguments.
Fix cross-references in api-macros.texi

* doc/ref/api-macros.texi (Macro Expansion): Fix cross-references.
Beginnings of CPS section in manual

* doc/ref/compiler.texi (Continuation-Passing Style): Beginnings of this
  section.  Will be finished when we fix implicit truncation.
Non-loadable sections should not have an sh_addr field set

* module/system/vm/linker.scm (relocate-section-header):
  (write-linker-object): Sections that are not loadable should not have
  their sh_addr fields set.  Fix.
Quick documentation fixes.

* doc/ref/compiler.texi: Make it build.
Fix section table writing for non-loadable sections

* module/system/vm/linker.scm (add-elf-objects): Don't fill in the
  sh_addr field if the section is not loadable.
Fix computation of LIBLOBJS.

Fixes <http://bugs.gnu.org/14193>.

* configure.ac (LIBLOBJS): Add prefix to computed .lo file name so
  dependencies work properly.
Add missing FUNC_NAME defines for pair accessors.

* libguile/pairs.c (scm_car, scm_cdr, scm_caar, scm_cadr, scm_cdar,
  scm_cddr, scm_caaar, scm_caadr, scm_cadar, scm_caddr, scm_cdaar,
  scm_cdadr, scm_cddar, scm_cdddr, scm_caaaar, scm_caaadr, scm_caadar,
  scm_caaddr, scm_cadaar, scm_cadadr, scm_caddar, scm_cadddr,
  scm_cdaaar, scm_cdaadr, scm_cdadar, scm_cdaddr, scm_cddaar,
  scm_cddadr, scm_cdddar, scm_cddddr): Add missing FUNC_NAME defines.
Remove unused function scm_i_tag_name.

* libguile/gc.c (scm_i_tag_name): Remove.
Merge branch 'stable-2.0'

Conflicts:
	libguile/pairs.c
	libguile/vm.c
	test-suite/tests/control.test