public inbox for kawa@sourceware.org
 help / color / mirror / Atom feed
* Incompatibility between the Android runtime and Kawa-generated field names
@ 2017-08-30 16:10 Kay Zheng
  2017-08-30 16:24 ` Per Bothner
  0 siblings, 1 reply; 8+ messages in thread
From: Kay Zheng @ 2017-08-30 16:10 UTC (permalink / raw)
  To: Kawa mailing list

Hi folks,

I built a simple Android app against Kawa's master branch. I've been
able to generate the APK, but the ART (Android runtime) kept
complaining about this when trying to launch the app:

    08-30 17:57:28.998 15990 15990 W art     : Failure to verify dex
file '/data/app/com.theerrorlog.superbapp-1/base.apk': Invalid field
name: '1+'

It turned out that some class files in Kawa's standard library
contained fields with exotic names such as '1+', '1-',
'%provide%srfi-41', which seemed to be legal JVM names, but treated as
illegal by the ART.

And I noticed that the 2.4 branch used a different naming scheme that
"translates" these exotic names into names with "escape sequences".
For example '1+' will be renamed to '$N1$Pl', making the translated
names all legal ART names too.

So what's the reason for abandoning the "escaping" naming scheme? Can
I remedy the incompatibility issue in some way?

Regards,
Kay Z.

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-09-01  4:15 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-08-30 16:10 Incompatibility between the Android runtime and Kawa-generated field names Kay Zheng
2017-08-30 16:24 ` Per Bothner
2017-08-30 16:42   ` Kay Zheng
2017-08-30 17:00     ` Kay Zheng
2017-08-30 17:04       ` Per Bothner
2017-08-30 17:10         ` Kay Zheng
2017-08-31 15:39         ` Per Bothner
2017-09-01  4:15           ` Kay Zheng

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).