00:05:42 | MFlamer_ | We can define types in a when block? |
00:05:58 | MFlamer_ | and these are resolved compile time? |
00:07:08 | MFlamer_ | nevermind gotit |
00:10:00 | * | OrionPK quit (Read error: Connection reset by peer) |
00:11:45 | * | ltbarcly joined #nimrod |
00:15:11 | * | Associat0r joined #nimrod |
00:15:11 | * | Associat0r quit (Changing host) |
00:15:11 | * | Associat0r joined #nimrod |
00:15:26 | * | Associ8or quit (Ping timeout: 240 seconds) |
00:26:38 | * | io2 quit () |
00:31:23 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
00:35:36 | * | ltbarcly joined #nimrod |
00:55:01 | * | MFlamer_ quit (Ping timeout: 250 seconds) |
01:08:22 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
01:13:38 | * | ltbarcly joined #nimrod |
01:13:46 | * | ltbarcly quit (Client Quit) |
01:20:43 | * | ltbarcly joined #nimrod |
01:44:39 | * | q66 quit (Quit: Leaving) |
01:47:27 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
01:58:14 | * | DAddYE joined #nimrod |
02:02:18 | * | ltbarcly joined #nimrod |
02:30:30 | * | Associat0r quit (Quit: Associat0r) |
03:30:21 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
03:33:38 | * | ltbarcly joined #nimrod |
04:16:29 | * | DAddYE quit (Remote host closed the connection) |
04:18:37 | * | DAddYE_ joined #nimrod |
04:38:14 | * | ltbarcly quit (Ping timeout: 240 seconds) |
04:39:08 | * | ltbarcly joined #nimrod |
05:12:36 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
05:18:14 | * | DAddYE_ quit (Remote host closed the connection) |
05:28:09 | * | DAddYE joined #nimrod |
05:56:22 | * | MFlamer_ joined #nimrod |
06:04:40 | MFlamer_ | how do we compile a 64bit build? |
06:08:58 | * | ltbarcly joined #nimrod |
06:53:05 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
07:11:51 | * | io2 joined #nimrod |
07:29:21 | * | MFlamer_ quit (Ping timeout: 250 seconds) |
08:05:27 | * | wlhlm joined #nimrod |
08:28:22 | * | DAddYE quit (Remote host closed the connection) |
08:41:47 | * | XAMPP quit (Read error: Connection reset by peer) |
08:42:13 | * | XAMPP joined #nimrod |
08:42:13 | * | XAMPP quit (Changing host) |
08:42:13 | * | XAMPP joined #nimrod |
08:45:46 | Araq | MFlamer: --cpu:amd64 |
08:47:38 | * | capisce quit (Ping timeout: 240 seconds) |
08:49:03 | * | capisce joined #nimrod |
08:56:14 | Araq | however it might be the default already |
08:59:30 | * | DAddYE joined #nimrod |
09:14:42 | * | DAddYE quit (Ping timeout: 256 seconds) |
09:56:32 | * | enurlyx joined #nimrod |
10:01:29 | enurlyx | Hello :) |
10:01:46 | enurlyx | Can someome explain me how to call windows.GetMessage? |
10:01:58 | enurlyx | I get the following error |
10:02:08 | enurlyx | Error: type mismatch: got (TMSG, HWND, uint, uint) |
10:02:18 | enurlyx | but expected one of: |
10:02:27 | enurlyx | windows.GetMessage(lpMsg: var TMSG, wnd: HWND, wMsgFilterMin: UINT, wMsgFilterMax: UINT): WINBOOL |
10:11:07 | * | DAddYE joined #nimrod |
10:15:25 | * | DAddYE quit (Ping timeout: 245 seconds) |
10:31:05 | * | dyu joined #nimrod |
10:32:27 | * | filwit joined #nimrod |
10:32:35 | filwit | hi |
10:33:34 | Araq | enurlyx: iirc windows.UINT is not the same as system.uint |
10:34:16 | Araq | hi filwit |
10:36:23 | filwit | hey Araq, theoretically, does the "T:typedesc" get optimized away from a "proc new(T:typedescp[Foo], ...) = ..." ? |
10:36:43 | dom96 | 'morning |
10:36:55 | filwit | or is it always passed around at runtime? (or do you just let the C compilers optimize here?) |
10:36:59 | filwit | morning, dom |
10:37:00 | * | q66 joined #nimrod |
10:37:59 | filwit | if it doesn't get optimized away, any tips on how to make a template which can work that way... for some reason everytime i try i get a "result not defined" |
10:38:10 | filwit | and making a macro seems a little overkill |
10:38:58 | Araq | typedesc introduce no runtime parameter |
10:39:48 | Araq | templates have no 'result' |
10:41:31 | filwit | okay, that's cool about typedesc introducing no runtime parameters, that makes my life easier |
10:50:33 | * | EXetoC joined #nimrod |
10:53:38 | enurlyx | Araq: How can i access windows.UINT? var a: windows.UINT --> undecleared identifier: UINT |
10:53:51 | enurlyx | I am importing only windows |
10:57:32 | filwit | is the convenience benchmarking proc/module anywhere? |
10:57:42 | filwit | or a example template i could copypasta? |
11:03:30 | Araq | filwit: no it's adrian's code that he never released anywhere as far as I know |
11:04:35 | Araq | enurlyx: looks like a bug to me, missing * in windows.nim; however just use int32 instead; it's an alias for it |
11:04:40 | filwit | Araq: k |
11:08:12 | enurlyx | Araq: Thanks, this works. |
11:11:54 | * | DAddYE joined #nimrod |
11:27:05 | * | DAddYE quit (Ping timeout: 245 seconds) |
11:33:13 | enurlyx | Under windows a gui app will start in WinMain. With the compilerflag --app:gui this seems to work. But how can i get the params (Hinstance, hwnd...) from this function? And how is the return value handled? |
11:38:42 | Araq | it returns 0 unless you invoke quit(...) |
11:38:57 | Araq | unhandled exceptions call quit(1) too |
11:39:41 | Araq | I don't think there is an easy way to get the HInstance hwnd stuff but then I never needed it. You can get the current window handle via some win api proc I assume? |
11:39:59 | enurlyx | Yes it is possible |
11:40:20 | enurlyx | I just wanted to know if there was a way to reach this params. |
11:40:34 | Araq | no without hacks I'm afraid |
11:40:36 | enurlyx | like they are added implicit into the namespace |
11:40:53 | Araq | command line arguments are still available via os.paramStr of course |
11:41:53 | enurlyx | Ok :) Thanks. |
11:43:13 | enurlyx | Have a nice day. |
11:43:18 | * | enurlyx quit (Quit: Verlassend) |
12:24:05 | * | DAddYE joined #nimrod |
12:28:20 | * | DAddYE quit (Ping timeout: 245 seconds) |
12:30:31 | * | filwit quit (Quit: Leaving) |
12:30:33 | * | shodan45 quit (Ping timeout: 245 seconds) |
12:30:41 | * | shodan45_ joined #nimrod |
13:24:45 | * | DAddYE joined #nimrod |
13:29:02 | * | logosd joined #nimrod |
13:29:45 | logosd | hi, araq. is the asm currently broken? |
13:31:44 | logosd | the code snip in the manual could not compile in my places. could anyone confirm that it will compile for them? |
13:31:59 | logosd | http://pastebin.com/Kxg4sLB7 |
13:33:45 | dom96 | IIRC someone else had problems too. |
13:34:06 | logosd | i am in archlinux x64 gcc 4.8.1 with the latest nimrod |
13:34:22 | dom96 | Are you getting an error from GCC? |
13:34:41 | logosd | yes, this is the error i get |
13:34:43 | logosd | Error: execution of an external program failed; rerun with --parallelBuild:1 to see the error message |
13:35:18 | dom96 | check out what C code Nimrod generates for that asm statement. |
13:36:24 | logosd | the generated c asm block looks not right. but i do not know if anything else is done on the runtime |
13:36:33 | logosd | this is the code it generated: |
13:36:39 | logosd | asm(" mov eax, a\n" " add eax, b\n" " jno theEnd\n" " call raiseOverflow\n" " theEnd:\n" ); |
13:39:09 | dom96 | I found the logs where someone else had the same problem: http://build.nimrod-code.org/irclogs/03-09-2013.html |
13:39:44 | dom96 | Search for "asm" and you will find the solution. |
13:40:28 | * | DAddYE quit (Ping timeout: 256 seconds) |
13:42:47 | logosd | thanks. i will check if there is any workaround on that. i m trying to implement atomicload and atomicstore for nimrod using asm since the atmics module in nimrod seems to not have them. |
13:45:49 | * | shodan45_ quit (Quit: Konversation terminated!) |
14:07:09 | * | shodan45 joined #nimrod |
14:26:15 | logosd | i think they are different problem. the generated asm block does have "" now. it looks the generated asm is in intel syntax but the ld might be expecting att syntax for it without a proper switch. indeed, i add -masm=intel to the generated gcc comand and it compile and work properly. i have no enough knowledge of nimrod to fix this. maybe araq could take a look and fix this |
14:27:10 | dom96 | Yeah, stick around. He should come back soon. |
14:28:59 | logosd | thanks for your help. dom96. i need to leave soon but i guess he could saw this log when he is back. |
14:29:06 | * | logosd quit (Remote host closed the connection) |
14:36:46 | * | DAddYE joined #nimrod |
14:41:38 | * | DAddYE quit (Ping timeout: 264 seconds) |
14:55:14 | * | OrionPK joined #nimrod |
15:11:00 | * | ltbarcly joined #nimrod |
15:37:23 | * | DAddYE joined #nimrod |
15:48:25 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
15:57:42 | * | dyu quit (Quit: Leaving) |
16:10:38 | * | DAddYE quit (Ping timeout: 256 seconds) |
16:16:46 | * | DAddYE joined #nimrod |
16:23:02 | * | DAddYE quit (Ping timeout: 240 seconds) |
16:40:52 | * | ltbarcly joined #nimrod |
16:59:47 | Araq | what's so hard to understand about the 'asm' statement? it's simply copied over into the C output |
17:00:06 | Araq | so if the C compiler uses Gnu asm syntax, so should your code |
17:00:57 | Araq | I guess the example in the manual shouldn't use Intel syntax |
17:01:03 | Araq | as GCC is the default compiler |
17:13:48 | dom96 | yes, that would be a nice idea |
17:14:03 | dom96 | Don't be surprised when people get confused at examples from the manual which don't work |
17:14:41 | Araq | fair enough but it's the *asm* statement. I expect people using inline assembler to know what they are doing |
17:15:16 | Araq | however, actually Nimrod should translate Intel syntax into Gnu's abomination |
17:15:27 | Araq | it's lot of work though |
17:19:34 | * | DAddYE joined #nimrod |
17:26:30 | * | DAddYE quit (Ping timeout: 264 seconds) |
17:29:05 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
18:02:20 | * | shevy joined #nimrod |
18:12:59 | * | Mat2 joined #nimrod |
18:13:04 | Mat2 | hello |
18:22:35 | * | DAddYE joined #nimrod |
18:23:27 | Mat2 | hi DAddYE |
18:28:56 | * | DAddYE quit (Ping timeout: 245 seconds) |
19:00:51 | * | Mat2 quit (Quit: Verlassend) |
19:25:35 | * | DAddYE joined #nimrod |
19:31:40 | * | DAddYE quit (Ping timeout: 245 seconds) |
19:41:03 | * | ltbarcly joined #nimrod |
19:45:33 | * | ltbarcly quit (Ping timeout: 245 seconds) |
20:28:41 | * | DAddYE joined #nimrod |
20:34:18 | * | wlhlm quit (Ping timeout: 264 seconds) |
20:35:00 | * | DAddYE quit (Ping timeout: 245 seconds) |
21:31:40 | * | DAddYE joined #nimrod |
21:38:13 | * | DAddYE quit (Ping timeout: 248 seconds) |
22:25:29 | * | io2 quit () |
22:34:43 | * | DAddYE joined #nimrod |
22:41:09 | * | DAddYE quit (Ping timeout: 248 seconds) |
23:37:39 | * | DAddYE joined #nimrod |
23:44:10 | * | DAddYE quit (Ping timeout: 245 seconds) |