* standard/Scheme.java (formatType): Don't enter impementation type
	into type->name map.  That could overwrite an existing entry,
	and doesn't seem right anyway.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7956 5e0a886f-7f45-49c5-bc19-40643649e37f
	Fix for Savannah bug #42713: "MalformedParameterizedTypeException
	thrown when compiling".  Actually 2 fixes: (1) Make the call
	getGenericType lazy (2) don't addField if field is private.
	* Location.java (type): Make private.
	(getType): Make non-final.
	* CodeAttr.java: Update accordingly.
	* ClassTypeWriter.java: Likewise.
	* Field.java (getType): New override.  If we have a reflect-field
	and type is null, call getGenericType.
	* ClassType.java (addField(java.lang.reflect.Field)): Inline.
	(addFields): Inline here. Leave type as null for now,
	Also skip if private.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7957 5e0a886f-7f45-49c5-bc19-40643649e37f
Re-format.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7958 5e0a886f-7f45-49c5-bc19-40643649e37f
	* standard/module_name.scm: Allow R6RS/R7RS-style library name as list.

	* kawa/expressions.scm: New R7RS-style module-name syntax.
	* rnrs/unicode.scm: Likewise.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7959 5e0a886f-7f45-49c5-bc19-40643649e37f
	* lang/Lambda.java (rewriteBody): After evaluating a parameter's type,
	update the Declaration's type.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7960 5e0a886f-7f45-49c5-bc19-40643649e37f
	* InPort.java (readCodePoint): Fix bad error in handling surrogates.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7961 5e0a886f-7f45-49c5-bc19-40643649e37f
	* standard/ImportFromLibrary.java: Fix typo in error message.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7962 5e0a886f-7f45-49c5-bc19-40643649e37f
        * Language.java (getTypeFor): Improvements in extracting a type
	from colon-notation and aliases.
	(getTypeFor): New private static method.

        * standard/location (getMakeProcLocProc):  New method.
	(rewrite): Use it.

        * annotations1.scm (authentication-identity): New test for using
	alias of nested type as type name.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7963 5e0a886f-7f45-49c5-bc19-40643649e37f
	Tweak helper methods for constructing loop expressions.
	* Compilation.java (loopBegin) Add return value.
	(loopRepeat, loopDone): New methods.
	(loopRepeatDone): Renamed from old loopDone.
	(loopBody, loopCond): Deprecated.
	* Expression.java (makeWhile): Update to use loopRepeatDone.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7964 5e0a886f-7f45-49c5-bc19-40643649e37f
	Handle "lenient conversions" using "lenient required types".
	* InlineCalls.java (class LenientExpectedType): New class.
	* LambdaExp.java (maybeSetReturnType): New static method.

	* CompileMisc.java (validateApplyConvert): If the conversion is
	lenient, use a LenientExpectedType for the required type of the value.
	(validateApplyCallCC, validateApplyWithExceptionHandler):
	Use new maybeSetReturnType to also check for a LenientExpectedType.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7965 5e0a886f-7f45-49c5-bc19-40643649e37f
Implement the 'string-cursor' API introduced in Chibi Scheme.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7966 5e0a886f-7f45-49c5-bc19-40643649e37f
Belated check-in.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7967 5e0a886f-7f45-49c5-bc19-40643649e37f
	* strings.scm (string-append/shared): Remove incorrect implementation
	in favor of srfi-13 version.

	* standard/Scheme.java (initScheme) Remove string-append/shared.

	The SRFI-13 function string-append/shared is no longer
	automatically imported.
	* misc-test.scm: Move string-append/shared tests from here ...
	* text-test.scm: ... to here.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7968 5e0a886f-7f45-49c5-bc19-40643649e37f
Re-formatted.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7969 5e0a886f-7f45-49c5-bc19-40643649e37f
	* MethodProc.java (isApplicable): Take an extra parameter
	to handle splice argumemnt expressions.

	* GenericProc.java (isApplicable): Update to support splicing.
	* PrimProcedure.java (isApplicable); Likewise.

	* ClassMethods.java (selectApplicable):  Add extra 'restType'
	argument to handle splices.
	* CompileInvoke.java (selectApplicable): Handle splices.

	* splice1.scm: Add test for fixed regression.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7970 5e0a886f-7f45-49c5-bc19-40643649e37f
	* SpecialObjectType.java: New class that extends ObjectType.
	Some properties moved from gnu.kawa.lispexpr.LangObjType.
	* Makefile.am: Update accordingly.
	* ObjectType.java (getImplementationType): No longer needed.
	* Type.java (nullType, toStringType): Now are SpecialObjectType.

	* LangObjType.java: Change to extend SpecialObjectType.
	Some methods and fields moved to SpecialObjectType.

	* lib-test.scm: Updated expected output for expand.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7971 5e0a886f-7f45-49c5-bc19-40643649e37f
	Add support for generating MethodHandle constant pool entries.
	* CpoolMethodHandle.java: New constructor.
	(hashCode, write): New methods.
	* ConstantPool.java (addMethodHandle): New methdods.
	* CodeAttr.java (emitPushMethodHandle): New method.
	* Type.java (javalanginvokeMethodHandleType): New field.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7972 5e0a886f-7f45-49c5-bc19-40643649e37f
	* CompileReflect.java (validateApplyInstanceOf): Warn if type
	argument isn't a type or class.
	* InstanceOf.java (compile): Better source location on error.

	* errors2.scm: Test new error on swapped instance? arguments.
	* srfi-69-test.scm: Fix typo.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7973 5e0a886f-7f45-49c5-bc19-40643649e37f
	* CompileReflect.java (validateApplyInstanceOf): Only constant-fold
	if type is a plain ClassType.  This fixes Savannah bug #42722
	"Explicit type declaration, later instance? check issues".
	* InstanceOf.java (compile): Use implementation-type.

	* sva42722.scm: New test for Savannah bug #42722
	"Explicit type declaration, later instance? check issues".


git-svn-id: http://sourceware.org/svn/kawa/trunk@7974 5e0a886f-7f45-49c5-bc19-40643649e37f
	* kawa/expressions.scm: Some more utility functions and macros.


git-svn-id: http://sourceware.org/svn/kawa/trunk@7975 5e0a886f-7f45-49c5-bc19-40643649e37f