Coder Social home page Coder Social logo

haxefoundation / haxe Goto Github PK

View Code? Open in Web Editor NEW
6.0K 169.0 642.0 81.67 MB

Haxe - The Cross-Platform Toolkit

Home Page: https://haxe.org

OCaml 35.27% NSIS 0.16% Haxe 63.08% Shell 0.26% C++ 0.08% Python 0.03% Java 0.09% HTML 0.01% Makefile 0.12% Batchfile 0.01% Objective-C 0.02% JavaScript 0.01% C 0.69% Lua 0.07% Ruby 0.01% Standard ML 0.01% PHP 0.02% ActionScript 0.01% Earthly 0.10%
haxe language compiler cross-platform transpiler programming-language macros jvm-languages

haxe's People

Contributors

aduros avatar andyli avatar atry avatar aurel300 avatar basro avatar cedx avatar deltaluca avatar fponticelli avatar frabbit avatar gama11 avatar haxiomic avatar herschel avatar hughsando avatar jdonaldson avatar kevinresol avatar klabz avatar mandel59 avatar markknol avatar mockey avatar nadako avatar ncannasse avatar peyty avatar pperidont avatar rblsb avatar realyuniquename avatar simn avatar smerkyg avatar tobil4sk avatar vonagam avatar waneck avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

haxe's Issues

Issue 44 - Haxe importing flash .swfs broken - haxe

[Google Issue #44 : https://code.google.com/p/haxe/issues/detail?id=44]
by [email protected], at 14/01/2010, 03:00:12
What steps will reproduce the problem?

The following Breaks.as (attached)

package { 
    public class Breaks {
        static public function f() : void {
        }
        public function f() : void {
        }
    }
}
  1. (optional results .swf attached) Compile into Breaks.swf (attached),
    using Adobe Flex "mxmlc Breaks.as".
  2. C:\workspace\flashdemo\ActionScriptTests>haxe --gen-hx-classes
    Breaks.swf
    import Breaks;
  3. C:\workspace\flashdemo\ActionScriptTests>cd hxclasses
  4. C:\workspace\flashdemo\ActionScriptTests\hxclasses>haxe Breaks.hx
    Breaks.hx:4: characters 8-28 : Same field name can't be use for both
    static and
    instance : f

What is the expected output? What do you see instead?

Haxe should compile ok
Haxe breaks in haxe compiler.

What version of the product are you using? On what operating system?
2.0.4 on Windows XP.

Please provide any additional information below.

Haxe importing flash .swfs in broken, it generates bad .hx from the .swf:
In Actionscript you may have a method with the same name as a static
method in the class. This is not valid in Haxe but haxe --gen-hx-classes
outputs a .hx that will not compile. FieldBreaks.as/FieldBreaks.swf have
the same problem but with fields rather than methods.

Please fix ASAP as I have a project that depends on importing .swfs like
those attached.

Yours Sincnerely,

Hank Inaworken.

Issue 26 - Using syntax on self - haxe

[Google Issue #26 : https://code.google.com/p/haxe/issues/detail?id=26]
by [email protected], at 21/12/2009, 22:56:18
Say you have this Main class:

package;
using Shortcut;

class Main {
    public static function main():Void {
        new Main();
    }
    public function new():Void {
        this.traceCheer();
    }
}

and this Shortcut class:

package;

class Shortcut {
    public static function traceCheer(main:Main):Void {
        trace("Yay!");
    }
}

That will work fine. "Yay!" will be traced, as the main class calls the
traceCheer method in the Shortcut class with a little help of the using syntax.

However, if you'd remove the "this.":

   public function new():Void {
    traceCheer();
}

you will get the following error:

Unknown identifier : traceCheer

This is not what I would expect. It means "real" methods and methods
injected by the using syntax require a different way of calling (in
exceptional cases). Not a big issue, more of a minor consistency problem.

Issue 33 - inline functions cannot alter parameters if they are the callee's loop variable - haxe

[Google Issue #33 : https://code.google.com/p/haxe/issues/detail?id=33]
by [email protected], at 05/01/2010, 19:20:06
What steps will reproduce the problem?

private function works(i) { i = 1; }

private inline function fails(i) { i = 1; } //<- won't compile

private function test() {
    for(i in 0...10) {
        works(i);
        fails(i);
    }
}

What is the expected output? What do you see instead?

Compilation error: "Loop variable cannot be modified"

What version of the product are you using? On what operating system?

Haxe 2.04 on x86-64 Ubuntu 9.10

Issue 37 - cast to specific type in Lamba doesn't work - haxe

[Google Issue #37 : https://code.google.com/p/haxe/issues/detail?id=37]
by [email protected], at 09/01/2010, 11:43:25
What steps will reproduce the problem?

Create a new Haxe/PHP project with the attached file.

What is the expected output? What do you see instead?

From the mock data, the expected output should be two traces:
true
abcde

But when using cast to any specified type within the Lambda functions, the
following PHP error appears: "Parse error: syntax error, unexpected
T_CLASS" and the Lambda function returns false.

What version of the product are you using? On what operating system?

Haxe 2.04 compiled from SVN with cygwin 2009-01-07. WinXP.

Please provide any additional information below.

By removing the cast type, making it an unsafe cast, it works.

Issue 36 - Unexpected character in input: '\' eval()'d code - haxe

[Google Issue #36 : https://code.google.com/p/haxe/issues/detail?id=36]
by [email protected], at 07/01/2010, 13:02:27
platform : php

issue:
Warning: Unexpected character in input: '' (ASCII=92) state=1 in
Some.class.php(796) : eval()'d code on line 157

cause:
double backslash in string.split("&quot;).join("/").split(';;').join("/");

workaround:
String.fromCharCode(92)

Issue 15 - Anonymous objects whose values are of type T do not fit Dynamic<T> - haxe

[Google Issue #15 : https://code.google.com/p/haxe/issues/detail?id=15]
by john%[email protected], at 24/11/2009, 17:03:08
What steps will reproduce the problem?

class Main {
    function foo(d:Dynamic<String>) {
    }
    function bar() {
        foo({a: "string"});
    }
}

What is the expected output? What do you see instead?

The program is expected to compile. However, it does not compile because an anonymous object
all of whose values are strings does not fit Dynamic<String> (even though it should).

What version of the product are you using? On what operating system?

Problem happens on all OS.

Please provide any additional information below.

Issue 20 - Http request returns blocked with POST and PUT - haxe

[Google Issue #20 : https://code.google.com/p/haxe/issues/detail?id=20]
by [email protected], at 02/12/2009, 18:56:36
What steps will reproduce the problem?

  1. Create a haxe.Http object
  2. Set Headers and Post Data
  3. Initiate Request with POST or PUT

What is the expected output? What do you see instead?
Expected: successful http POST and PUT.
Result: Thrown exception "Blocked"

What version of the product are you using? On what operating system?
HaXe 2.04 on Mac OsX

Please provide any additional information below.

In addition to the code attached, I've tried setting a longer connection timeout, and closing the
request. Neither of these worked, nor did including the lines I've commented out.

Issue 31 - default argument failes when followed by PosInfos (flash9 only) - haxe

[Google Issue #31 : https://code.google.com/p/haxe/issues/detail?id=31]
by [email protected], at 03/01/2010, 15:46:38
What steps will reproduce the problem?

Compile the following for Flash9:

class TestDefaultArguments

{
    public function new();
    static function f(?a : Null<Int> = 1, ?pos : haxe.PosInfos)
    {
        return a;
    }
    public function testWithPosInfos()
    {
        Assert.equals(1, f());
    }
}

What is the expected output? What do you see instead?

The assertion should be true but Null is returned instead.

ATTENTION FOR REPO WATCHERS: Issues migration

Between 03:00:00 AM GMT - 12:00:00 AM GMT of May 28th, we will import our old Google Code issues. It's recommended that you stop watching this repository before this time, so you don't get flooded with notifications.
It will be safe to watch the repository again after 12:00:00 AM GMT

Issue 13 - incomplete method signatures in swc files - haxe

[Google Issue #13 : https://code.google.com/p/haxe/issues/detail?id=13]
by [email protected], at 23/11/2009, 15:52:24
when using the adobe compc utility for creating swc files the parameter
names are defined if debug=true, otherwise the parameter names are
param0...paramN. with the latest HaXe, the parameter names are always
param0...paramN, regardless whether the debug flag is set or not.

Issue 30 - SQLite version 3 not supported on PHP platform - haxe

[Google Issue #30 : https://code.google.com/p/haxe/issues/detail?id=30]
by [email protected], at 29/12/2009, 20:51:51
The sqlite_x() functions generated for PHP is only compatible with the old
SQLite 2 databases, while Neko supports v3.

Attached is a drop-in replacement for std/php/db/Sqlite.hx that uses
PHP-PDO objects to communicate with the SQLite 3 database. (Version 2 can
be used through an argument in the constructor).

Issue 55 - Method native implementation currying leaks and will cause comparison errors - haxe

[Google Issue #55 : https://code.google.com/p/haxe/issues/detail?id=55]
by [email protected], at 04/02/2010, 12:52:02
Explanation of problem and how to fix:

http://lists.motion-twin.com/pipermail/haxe/2010-January/033264.html

Test I did today confirms that a separate instance of a function is created
for each subsequent curry of the same method:

class Test {
    static function main() {}
    function method() {}
    function method2() {var f = method;}
    }

JavaScript:

Test.prototype.method2 = function() {
    var f = $closure(this,"method");
    }

js.Boot.__closure = function(o,f) {
var m = o[f];
if(m == null) return null;

   var f1 = function() {
    return m.apply(o,arguments);
    }
f1.scope = o; f1.method = m; return f1;

Neko:

    @ tmp.method2 = function() {
    var f = {
        var @tmp = this, @fun = @tmp.method;
        @closure0(@tmp,@fun);
        }
    ;
    return null;
    }
@ closure0 = function(@ this,@ fun)
    if ( @ fun == null )
        null
    else
            function() {
    this = @this;
    @fun();
    }

Interp.Runtime(_)

Hi!

When i'm working with macros i'm often get this error without any additional information. Could you please extends this error with some info about what happens for better debug?

parameterised abstacts based on abstracts do not use operator overloads.

abstract A<T>(T) from T to T {
    public function new(x:T) this = x;

/* this doesn't help either :D
    @:op(A==B) public inline static function eq<T>(a:A<T>, b:A<T>) {
        var at:T = a;
        var bt:T = b;
        return at == bt;
    }
*/
}
abstract B(Int) from Int to Int {
    public function new(x:Int) this = x;

    @:op(A==B) public inline static function eq(a:B, b:B) {
        var ai:Int = a;
        var bi:Int = b;
        return (ai - bi) % 2 == 0;
    }
}

class Main {
    static function main() {
        var x:B = 1;
        var y:B = 2;
        var z:B = 3;
        var w:B = 4;
        trace([x==y, x==z, x==w, y==z, y==w, z==w]);

        var x:A<B> = x;
        var y:A<B> = y;
        var z:A<B> = z;
        var w:A<B> = w;
        trace([x==y, x==z, x==w, y==z, y==w, z==w]);
    }
}

traces:

[false,true,false,false,true,false]
[false,false,false,false,false,false]

waaah!!

Since '==' is inlined, compiler should then be able to use the (concrete) T to check for overloads when T is abstract.

Issue 52 - haXe/PHP Serialize a SPOD object - haxe

[Google Issue #52 : https://code.google.com/p/haxe/issues/detail?id=52]
by [email protected], at 01/02/2010, 15:10:40
I have a User class that extends php.db.Object
All works fine until I try to use haxe.Serializer.run( myUser );
It throws :
Fatal error: Access to undeclared static property: User::$tname in
dev\lib\php\Boot.class.php(278) : eval()'d code on line 1

class Test {
    static function main() {
        var cnx = php.db.Mysql.connect( { user : "root", socket : null, port :
            3306, pass : "", host : "localhost", database : "fk" } );
        php.db.Manager.cnx = cnx;
        php.db.Manager.initialize();
        var ul = User.manager.search( { name : "test", pass : "pass" } );
        trace( ul.first() ); // OK
        var sUser = haxe.Serializer.run( ul ); // FATAL ERROR
        }
    }

Issue 54 - for( in ) variable can be corrupted in JavaScript - haxe

[Google Issue #54 : https://code.google.com/p/haxe/issues/detail?id=54]
by [email protected], at 04/02/2010, 10:41:21

class Test {
    static function main() {
        for( i in 0...1 )
        {
            _g = 0;
            trace("infinite loop");
            }
        }
    }

Produces:

Test.main = function() {
    var _g = 0;
    while(_g < 1) {
        var i = _g++;
        _g = 0;
        haxe.Log.trace("infinite loop",{ fileName : "Test.hx", lineNumber : 6,
            className : "Test", methodName : "main"});
        }
    }

Since the HaXe documentation states that var i should not be available
outside the function and that modification of i should not affect the
iteration, then the only possible fix for this bug is that HaXe must detect
if _g is in use within the loop and use a different name.

Note I also clarified in the documentation that not only is the
modification of the iteration variable not saved, that also it does not
affect the number of iterations (which might be a source of confusion for
integer iteration case with ...):

http://haxe.org/wiki/history?page=0;diff=7980

install.ml

We have to update install.ml to work with git, I guess.

Issue 56 - Type constraints for Ints do not allow for integer comparison. - haxe

[Google Issue #56 : https://code.google.com/p/haxe/issues/detail?id=56]
by [email protected], at 04/02/2010, 14:48:46
What steps will reproduce the problem?
Type constraints allow comparisons for Floats, but not for Ints. The code
at the bottom will work if it is rewritten as:

class Test<T:Float>{...}

but does not work as is.

What is the expected output? What do you see instead?
I thought this should compile properly. Instead, this is the error:
> return this.x > x;
src/Test.hx:8: characters 9-19 : Cannot compare Test.T and Test.T

Please complete the following class with minimal code reproducing the
problem :

class Test<T:Int>{
    private var x:T;
    public function new(x:T){
        this.x = x;
        }
    public function compare(x:T){
        return this.x > x;
        }
    public static function main(): Void
    {
        var f = new Test<Int>(5);
        }
    }

Please provide any additional information below.

Issue 48 - Type.getInstanceFields doesn't work for native Flash classes - haxe

[Google Issue #48 : https://code.google.com/p/haxe/issues/detail?id=48]
by [email protected], at 19/01/2010, 12:47:41
What steps will reproduce the problem?
In haxe/flash, e.g.:
trace(Type.getInstanceFields(flash.text.TextFormat));

What is the expected output? What do you see instead?
Expected output would be an array with the field names of the class.
Instead an empty array is returned.

What version of the product are you using?
haxe 2.05 compiled from SVN

Please provide any additional information below.
The describe() function in Type.hx only deals with "method" and "variable"
returned from flash.utils.describeType. The class fields of native Flash
classes are apparently returned as "accessor". Adding "accessor" to
describe() works fine for me. Patch attached.

Issue 50 - 'Some constructors are not matched' warning is missing - haxe

[Google Issue #50 : https://code.google.com/p/haxe/issues/detail?id=50]
by [email protected], at 26/01/2010, 21:50:28
enum FooEnum

{
    A;
    B;
    C;
    }

class Foo

{
    public static function main():Void
    {
        var x = FooEnum.A;
        switch (x)
        {
            case FooEnum.A:
            }
        }
    }

Compile with haxe -swf9 foo.swf -main Foo

This compiles without compiler warning. But according to the documentation,
there should be a 'Some constructors are not matched: C,B' message. The
message only appears for:

switch (x)

{
    case A:
    }

Issue 40 - TypedDictionary should "implement Dynamic" as per Dictionary class' native signature. - haxe

[Google Issue #40 : https://code.google.com/p/haxe/issues/detail?id=40]
by [email protected], at 11/01/2010, 17:58:03
What steps will reproduce the problem?
1.
<code haxe>
var d = new flash.utils.TypedDictionary<String, Dynamic>(true);
d.set("key1", new flash.display.Sprite()); // Exception thrown
d.get("key1"); //Exception thrown
</code>

Additionally, the fault may have nothing to do whether one uses weak or
strong keys, and possibly is also applicable to certain other key types in
addition to 'String' and 'Int' which are tested to fail.

What is the expected output? What do you see instead?

It is expected that the TypedDictionary class behaves as the native Flash
Player Dictionary class plus its provision of strict type checking for
allowed key and value types, courtesy haXe. Regardless of type checking
(indeed it appears to play no role), the API should allow for seting values
for keys as specified by class key type parameter (the first - here
'String') and getting values for both existing and non-existing keys. A
null value should be returned when a key-value pair is not found.

Instead at least the two API methods - 'get', 'set' - throw exceptions
either when value not found for a key, or when trying to set a value for a
key, situations considered non-exceptional for the class applications.
Similiar errors apply to other methods such as 'exists'.

What version of the product are you using? On what operating system?

haXe checked out and built from CVS, version 2.04, running on Ubuntu 9.10
x86 32-bit.

Please provide any additional information below.

In Adobe LiveDocs for the flash.utils.Dictionary class documentation at
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/utils/Dictionary.html
the class is defined as, quote:

"public dynamic class Dictionary"

which per Flash Player suggests that the class is not 'sealed' (see
additional FP documentation(s)), and thus allows for "loose" bracket syntax
for accessing properties, indeed a requirement for the Dictionary class, as
its documentation later explains - sealed classes do not allow adding
properties to class objects at runtime, something that forms the very basis
of Dictionary functionality. So, for the haXes own TypedDictionary class
definition which extends and absolutely relies on the Dictionary class to
work, it needs to ALSO be defined as such "dynamic" class. Obviously, in
haXe this is done with the "implements Dynamic" syntax.

Indeed when the class definition file is patched to include the above
correction, the TypedDictionary<K, T> behaves as expected in Flash Player,
adding the useful haXe-assisted strict key and value type checking, both
strong and weak references.

Issue 28 - Various as3gen problems - haxe

[Google Issue #28 : https://code.google.com/p/haxe/issues/detail?id=28]
by [email protected], at 28/12/2009, 08:02:20
What steps will reproduce the problem?

  1. get sandy haxe trunk, generate as3

What is the expected output? What do you see instead?
I expect working as3 code. Various issues were reported on ML, none was
addressed.

http://lists.motion-twin.com/pipermail/haxe/2009-November/031485.html
http://lists.motion-twin.com/pipermail/haxe/2009-November/031492.html
http://lists.motion-twin.com/pipermail/haxe/2009-November/031493.html
http://lists.motion-twin.com/pipermail/haxe/2009-November/031494.html
http://lists.motion-twin.com/pipermail/haxe/2009-November/031497.html

What version of the product are you using? On what operating system?
2.04, WinXP

Please provide any additional information below.

Issue 42 - Using in Combination with Typedef fails - haxe

[Google Issue #42 : https://code.google.com/p/haxe/issues/detail?id=42]
by [email protected], at 12/01/2010, 20:39:36
package;

import haxe.Int32;

class Static {
    public static function trace (i : Int) : Void {
        trace("foo");
    }
}

typedef TStatic = Static;

using Main.TStatic;

class Main {
    public static function main ():Void 
    {
        PointStatic.trace(5); // works
        5.trace(); // fails to compile with "Int has no field trace"
    }
}

What version of the product are you using? On what operating system?
Version 2,05,1

Please provide any additional information below.
I experienced this while using the Std Class Int32, it works perfectly with
all targets except the cpp target (using a typedef for Int32).

Issue 45 - Inline static variables on extern classes don't work on AVM2 - haxe

[Google Issue #45 : https://code.google.com/p/haxe/issues/detail?id=45]
by waneck, at 14/01/2010, 22:07:48
What steps will reproduce the problem?

  1. create a code that uses an extern definition with static inline variables:

e.g.

class Main

{
    static function main() 
    {   
        trace(Test.variableInjection);
        trace(Test.methodInjection());
    }
}

extern class Test

{
    public static inline var variableInjection:Int = 0;
    public static inline function methodInjection():Int
    {
        return 0;
    }
}

What is the expected output? What do you see instead?
It is expected to see 0 and 0 traced. Instead, flash throws a ReferenceError:
ReferenceError: Error #1065: Variable Test is not defined.
at MethodInfo-72()[C:\Program Files\Motion-Twin\haxe/std/Std.hx:175]
at flash::Boot()[C:\Program Files\Motion-Twin\haxe/std/flash9/Boot.hx:86]

The code will work, though, if variableInjection is eliminated from the
code (the method injection works as expected)

What version of the product are you using? On what operating system?
haXe release 2.05

Issue 17 - php inline var error - haxe

[Google Issue #17 : https://code.google.com/p/haxe/issues/detail?id=17]
by [email protected], at 27/11/2009, 06:57:58
class Main

{
    public static inline var data:Array <String> = ["0", "1", "2"];
    public static function main()
    {
        trace(data[1]);
    }
}

breaks with haxe 2.04.

removing the inline makes it work

Issue 47 - method/null property results in unexpected AS3 code - haxe

[Google Issue #47 : https://code.google.com/p/haxe/issues/detail?id=47]
by [email protected], at 18/01/2010, 16:58:47
The following haXe class:
package;

class Main {
    public static function main():Void {
        new Main();
    }
    private var property(getProperty, null):Int;
    public function new():Void {
        property = 4;
    }
    private function getProperty():Int {
        return 0;
    }
}

Results in the following AS3 code (when compiled targeting AS3):

package  {
    import flash.Boot;
    public class Main {
        public function Main() : void { if( !flash.Boot.skip_constructor ) {
                this.property = 4;
            }}
        protected function get property() : int { return getProperty(); }
        protected var $property : int;
        public function getProperty() : int {
            return 0;
        }
        static public function main() : void {
            new Main();
        }
    }
}

Note the line in the constructor:
this.property = 4;
This does not work, as there is no property field. It could have been this:
this.$property = 4;

I'm using haXe compiler 2.05.

Workarounds for this problem include:
Manually adding the sigil ($) character.
Defining a setter, instead of using null.

Label suggestions: Type-Defect, Priority-Low, Platform-AS3.

Issue 51 - 'cannot grow buffer' when embedding more than 12mb - haxe

[Google Issue #51 : https://code.google.com/p/haxe/issues/detail?id=51]
by [email protected], at 26/01/2010, 22:24:13
What steps will reproduce the problem?

  1. Embed > ~12mb of binary files in any haxe project using the -resource
    directive
  2. Try to compile

What is the expected output? What do you see instead?
Error : Buffer.add: cannot grow buffer

Please provide any additional information below.

Found the error trying to embed 38mb of .tga files (ranging from 812bytes to
2.0mb individually - 127 files in total), but tested it using mp3's and the
~12mb limit is the same. Running svn 2.05 version of haxe.

Issue 24 - cannot access interface methods in swc files - haxe

[Google Issue #24 : https://code.google.com/p/haxe/issues/detail?id=24]
by [email protected], at 19/12/2009, 23:01:43

  1. compile the HaXe class TestInterface with:
    haxe -swf9 interface.swc TestInterface

class TestInterface

{
}

class Foo implements IFoo

{
    public function new()
    {
    }
    public function foo():Void
    {
    }
}

interface IFoo

{
    function foo():Void;
}
  1. now try to compile the AS3 class below using the generated swc file.
    this fails with: 'Error: Attempted access of inaccessible method foo
    through a reference with static type IFoo.' (I'm using FlexSDK 3.4.0)

package

{
    import flash.display.MovieClip;
    public class TestInterface extends MovieClip
    {
        public function TestInterface() 
        {
            var f:Foo = new Foo();
            var i:IFoo = f;
            i.foo(); //error
        }
    }
}

Issue 14 - VerifyError: Error #1068: int and Number cannot be reconciled. - haxe

[Google Issue #14 : https://code.google.com/p/haxe/issues/detail?id=14]
by [email protected], at 23/11/2009, 22:20:59
What steps will reproduce the problem?

  1. Get haxe latest from http://haxe.org/doc/build/haxe_macosx_build
  2. Get latest from haxe3d ala svn checkout http://haxe3d.googlecode.com/svn/trunk/ haxe3d-
    read-only
  3. compile haxe -swf Test.swf -swf-version 10 -main Test;open Test.swf

What is the expected output?
awesome 3d goodness yay

What do you see instead?
VerifyError: Error #1068: int and Number cannot be reconciled.

at MethodInfo-74()
at h3d.tools::ObjReader/parseModels()
at h3d.tools::ObjReader/parseMtl()
at MethodInfo-558()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()

What version of the product are you using? On what operating system?
$ haxe -v
Haxe Compiler 2.04 - (c)2005-2009 Motion-Twin

Please provide any additional information below.
purple monkey dishwasher

Issue 35 - haxe.rtti.Generic + inheritance - haxe

[Google Issue #35 : https://code.google.com/p/haxe/issues/detail?id=35]
by [email protected], at 07/01/2010, 10:59:29
The following code fails to compile:

class Foo

{
    static var _app:Foo;
    public static function main():Void
    {
        var app = new Foo();
    }
    public function new() 
    {
        var node:B<Int> = new B<Int>();
        var f = function(node:A<Int>):Void {};
        node.foo(f);
    }
}

class A<T> implements haxe.rtti.Generic

{
    public function new() {}
    public function foo(func:A<T>->Void):Void {}
}

class B<T> extends A<T>

{
    public function new() 
    {
        super();
    }
}

compile with:
haxe -swf9 foo.swf -main Foo

output:
Foo.hx:16: characters 13-14 : node : A_Int -> Void should be A<Int> -> Void
Foo.hx:16: characters 13-14 : A<Int> should be A_Int
Foo.hx:16: characters 13-14 : For function argument 'func'

I'm not sure if this is a bug - it works when the function f that is passed
to foo is explicitly typed to Dynamic so compiler skips type checking.

Issue 29 - unknown identifier with haxe.rtti.Generic - haxe

[Google Issue #29 : https://code.google.com/p/haxe/issues/detail?id=29]
by [email protected], at 29/12/2009, 17:24:57
The following code fails to compile (latest svn build):

class Main

{
    public static function main():Void
    {
        new Foo<Int>();
    }
}

class Foo<T> implements haxe.rtti.Generic

{
    var _a:Array<T>;
    public function new()
    {
        _a = new Array<T>();
    }
    inline public function foo1(i:Int):T
    {
        return foo3(i);
    }
    public function foo2(x:Foo<Float>):Void
    {
    }
    inline function foo3(i:Int):T { return _a[i]; }
}

compile with haxe -swf9 -main Main

error:
Foo.hx:20: characters 11-15 : Unknown identifier : foo3
Foo.hx:18: lines 18-21 : Foo.T should be Void

compiles only if foo2 is declared before foo1 or after foo3 or
foo2(x:Foo<Float>) is changed to foo2(x:Foo<T>) or haxe.rtti.Generic is
removed.

Issue 46 - if statement generates a bug when compiled to php - haxe

[Google Issue #46 : https://code.google.com/p/haxe/issues/detail?id=46]
by [email protected], at 15/01/2010, 20:15:15
What steps will reproduce the problem?

I created a function to check if a url is (1) not null, (2) not = "", and (3) verify that another
function returns true. For some reason this does not compile to PHP successfully. The haxe
compiler doesn't complain, but the server script reports the following:

PHP Parse error: syntax error, unexpected T_ISSET, expecting T_STRING in
/Users/pauldegoes/Documents/haXe/libraries/hHttp/test-
assets/www/lib/hHttp/AbstractHHttpImpl.class.php on line 175

What is the expected output? What do you see instead?
working php code

What version of the product are you using? On what operating system?
haxe 2.5 on Mac OSX

Please provide any additional information below.

Code causing bug:

private function proxyIsSet(proxyUrl:String):Bool {
    return if (proxyUrl != null && proxyUrl != "" && isValidQueryString(proxyUrl) == true) true 
    else false;
}

isValidQueryString accepts a url and returns a Bool

The following code works around the bug (extracting the value of isValidQueryString and
comparing it in the if statement)

private function proxyIsSet(proxyUrl:String):Bool {
    var isValidUrl:Bool = isValidQueryString(proxyUrl);
    return if (proxyUrl != null && proxyUrl != "" && isValidUrl == true) true else false;
}

Issue 41 - linux installer broken for 2.05 - haxe

[Google Issue #41 : https://code.google.com/p/haxe/issues/detail?id=41]
by [email protected], at 11/01/2010, 19:19:20
What steps will reproduce the problem?

  1. wget http://haxe.org/file/hxinst-linux.tgz
  2. tar xzf hxinst-linux.tgz
  3. sudo ./hxinst-linux

What is the expected output? What do you see instead?

This should install latest haXe(2.05) and neko(1.81?), instead i get:
Getting Local haXe Version
Getting Local Neko Version
Getting Latest haXe Version
Getting Latest Neko Version
Do you want to install haXe 2.5 ? [y/n] y
Downloading haxe-2.05-linux.tar.gz (100%))

ERROR = Invalid octal char

Called from neko/zip/Reader.hx line 279
Called from neko/zip/Reader.hx line 229
Called from neko/zip/Reader.hx line 128
Called from tools/hxinst/Main.hx line 310
Called from tools/hxinst/Main.hx line 316
Called from tools/hxinst/Main.hx line 264
Called from tools/hxinst/Main.hx line 85

What version of the product are you using? On what operating system?

OS is linux ubuntu 9.10
haXe 2.04 is installed.

Please provide any additional information below.

This was reproduced on several boxes.

Issue 22 - php 'final' keyword issue - haxe

[Google Issue #22 : https://code.google.com/p/haxe/issues/detail?id=22]
by [email protected], at 04/12/2009, 03:56:40
there is a conflict with the php keyword 'final' when calling a super.final()

override public function final()

{
    super.final();
}

becomes

public function hfinal()

{
    super::final();
}

it should be super::hfinal

Issue 21 - http request returns blocked with POST and PUT - haxe

[Google Issue #21 : https://code.google.com/p/haxe/issues/detail?id=21]
by [email protected], at 02/12/2009, 18:58:18
What steps will reproduce the problem?

  1. Create a haxe.Http object
  2. Set Headers and Post Data
  3. Initiate Request with POST or PUT

What is the expected output? What do you see instead?
Expected: successful http POST and PUT.
Result: Thrown exception "Blocked"

What version of the product are you using? On what operating system?
HaXe 2.04 on Mac OsX

Please provide any additional information below.

In addition to the code below, I've tried setting a longer connection timeout, and closing the
request. Neither of these worked, nor did including the lines I've commented out.

var http:Http = new haxe.Http(url);
var dataLength:Int = if (data == null) 0; else data.length;

        try {
    var hasPost:Bool = if(data == null) false; 
    else {
        http.setPostData(data);
        true;
    }
    http.onError = failure;
    //http.setHeader("User-Agent", _curl.userAgent);
    //http.setHeader("Content-type", "text");
    //http.setHeader("Host", url);
    http.setHeader("Content-length", Std.string(dataLength));
    http.onData = function(output) {
        trace(output);
        success(output);
    }
    http.request(hasPost);
}
        catch (e:Dynamic) {
    failure(Std.string(e));
}

Issue 39 - PHP - parseMultipart incorrectly dealing with 'no file' - haxe

[Google Issue #39 : https://code.google.com/p/haxe/issues/detail?id=39]
by [email protected], at 11/01/2010, 08:42:12
What steps will reproduce the problem?

  1. Make a form(multipart/form-data) with a couple of file inputs
  2. Leave some of them empty
  3. No files will eventually get uploaded

What is the expected output? What do you see instead?

It should silently fail? Probably? (I know how bad is that...)
instead of:

uncaught exception: No file was uploaded

Called from php.Web::parseMultipart
Called from php.Web::getMultipart
Called from Main::main

What version of the product are you using? On what operating system?

haxe 2.04, haxe 2.05
linux, windows,

Issue 34 - php.Lib.print() seems broken in callbacks - haxe

[Google Issue #34 : https://code.google.com/p/haxe/issues/detail?id=34]
by [email protected], at 06/01/2010, 13:58:58
What steps will reproduce the problem?

Make a PHP project with the attached hx file as main.

What is the expected output? What do you see instead?

Expected is to see first a trace of 'test', then plain php output 'test'.
Instead a PHP error, "Undefined class constant 'hprint' in
...TestPrint.class.php" is shown. Same problem when changing callback to
php.Lib.println.

What version of the product are you using? On what operating system?

HaXe compiled from SVN with cygwin 2010-01-06. WinXP.

Issue 32 - In Flash9, null can't be used as basic type Int - haxe

[Google Issue #32 : https://code.google.com/p/haxe/issues/detail?id=32]
by [email protected], at 03/01/2010, 22:38:08
class Foo

{
    inline public static function foo(?p1:Bool = false, ?p2:Int = 0):Void
    {
    }
    public function new()
    {
        foo(false);
    }
}

error: In Flash9, null can't be used as basic type Int
compile with: haxe -swf9 Foo.swf Foo --no-inline

works if --no-inline is omitted or the inline keyword is removed from foo().

Issue 18 - Javascript urldecoding fails on "international" characters - haxe

[Google Issue #18 : https://code.google.com/p/haxe/issues/detail?id=18]
by [email protected], at 27/11/2009, 08:00:46
What steps will reproduce the problem?

  1. Create a haxe/js project
  2. Put in the main method: trace(StringTools.urlDecode('Tr%E4ning'));

What is the expected output? What do you see instead?

Expected output is "Träning", instead there is a javascript error
"malformed URI sequence".

What version of the product are you using? On what operating system?

Haxe 2.04 built from CVS around 2009-11-01.

Please provide any additional information below.

I've been doing some serializing between php and js, and found a problem
with for example the characters åäö. Because of some incompability in the
encoding/decoding, urlDecode() in javascript fails with "malformed URI
sequence". I found the solution by using the function "unescape" before the
decodeURIComponent in StringTools.js. So the javascript part of
StringTools.urlDecode() should look like this:

return decodeURIComponent(unescape(s.split("+").join(" ")));

Issue 16 - Php 5.3 Lambda error - haxe

[Google Issue #16 : https://code.google.com/p/haxe/issues/detail?id=16]
by [email protected], at 27/11/2009, 06:49:12
trace("X");

causes:

uncaught exception: Parameter 1 to _hx_lambda::execute2() expected to
be a reference, value given (errno: 2) in
D:\DEVELOPMENT\coah\www\lib\haxe\Log.class.php at line #5Parameter 1
to _hx_lambda::execute2() expected to be a reference, value given in file:
D:\DEVELOPMENT\coah\www\lib\haxe\Log.class.php line 5 #0 [internal
function]: _hx_error_handler(2, 'Parameter 1 to ...',
'D:\DEVELOPMENT...', 5, Array)
#1 D:\DEVELOPMENT\coah\www\lib\haxe\Log.class.php(5):

call_user_func_array(Array, Array)
#2 D:\DEVELOPMENT\coah\www\lib\Test.class.php(7): haxe_Log::trace('X',

Object(_hx_anonymous))
#3 D:\DEVELOPMENT\coah\www\lib\Main.class.php(7): Test->__construct()
#4 D:\DEVELOPMENT\coah\www\index.php(11): Main::main()
#5 {main}

Issue 53 - PHP/MySQL getLength of ResultSet PHP error - haxe

[Google Issue #53 : https://code.google.com/p/haxe/issues/detail?id=53]
by [email protected], at 04/02/2010, 03:08:06
This seemed to be working fine with 2.04, but 2.05 has problems.

You get the following error:

uncaught exception: mysql_affected_rows(): supplied argument is not a valid
MySQL-Link resource (errno: 2) in
C:\DEVELOPMENT\lightcreative_arenaint\www\lib\php\db_Mysql\MysqlResultSet.class.php
at line #14mysql_affected_rows(): supplied argument is not a valid
MySQL-Link resource

in file:
C:\DEVELOPMENT\lightcreative_arenaint\www\lib\php\db_Mysql\MysqlResultSet.class.php
line 14
#0

C:\DEVELOPMENT\lightcreative_arenaint\www\lib\php\db_Mysql\MysqlResultSet.class.php(14):
hx_error_handler(2, 'mysql_affected...', 'C:\DEVELOPMENT...', 14, Array)
#1 C:\DEVELOPMENT\lightcreative_arenaint\www\lib\Test.class.php(6):

php_db__Mysql_MysqlResultSet->getLength(true)
#2 C:\DEVELOPMENT\lightcreative_arenaint\www\lib\Main.class.php(8):

Test->__construct()
#3 C:\DEVELOPMENT\lightcreative_arenaint\www\index.php(11): Main::main()
#4 {main}

when trying to do an UPDATE operation.

What steps will reproduce the problem?

var cnx = Mysql.connect([details]);
var affected = cnx.request("UPDATE test SET var='y' WHERE id=1").length);
trace(affected);

What is the expected output? What do you see instead?

An integer of how many rows are affected.

What version of the product are you using? On what operating system?

2.05 / Windows (Vista 64) / PHP 5.2.6

Please provide any additional information below.

I found I could fix it by changing a line in the library MysqlResultSet
class in php/db/Mysql.hx file. You just have to get rid of the result set
itself in the following line:

return untyped call("mysql_affected_rows", __r);

and change to:

return untyped call("mysql_affected_rows");

I've had this problem before when doing straight PHP, that if you give an
link resource to this function it complains. Leaving it out means it just
uses the last one used. I guess my fix would cause hard to find errors for
people who are connecting to more than one database so another fix should
probably be found.

Issue 43 - XML not package prefixed with --gen-hx-classes - haxe

[Google Issue #43 : https://code.google.com/p/haxe/issues/detail?id=43]
by [email protected], at 13/01/2010, 09:11:40
What steps will reproduce the problem?

1.run haxe --gen-hx-classes on a swf which contains fl.motion.MotionBase
(Tweening)
2.try compiling the MotionBase.hx generated class
3.

What is the expected output? What do you see instead?

It seems that --gen-hx-classes does not qualify the XML class with the
flash.xml prefix.
So that the compiler is resolving it has haxe.std.XML which is
complaining about not defining type XML.

Parsed C:\Program Files\Motion-Twin\haxe/std/XML.hx

E:@ Work\haXe\IdenStudio\SiteEditor\hxclasses/fl/motion/MotionBase.hx:7:

characters 1-32 : Module XML does not define type XML

Build halted with errors (haxe.exe).

Adding the flash.xml prefix in the generated classes seems to fix the
problem.

What version of the product are you using? On what operating system?
haXe Compiler 2.05 - (c)2005-2010 Motion-Twin
WindowsXP

Please provide any additional information below.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.