Welcome, Guest |
You have to register before you can post on our site.
|
Forum Statistics |
» Members: 483
» Latest member: aplus
» Forum threads: 2,799
» Forum posts: 26,380
Full Statistics
|
|
|
A path finding algorithm |
Posted by: aadityap0901 - 08-22-2024, 06:54 AM - Forum: Programs
- Replies (5)
|
|
A path finding algorithm:
optimized for making a path when the map updates, and entities can find their path by going to its neighbor tile with the lowest value.
Code: (Select All)
DefInt A-Z
Screen _NewImage(640, 640, 32)
Dim Shared As _Unsigned Integer Grid(1 To 40, 1 To 40), Grid2(1 To 40, 1 To 40)
Dim As _Unsigned Integer StartPoint_X, StartPoint_Y, EndPoint_X, EndPoint_Y
Dim As Integer X, Y, L
StartPoint_X = 10
StartPoint_Y = 10
EndPoint_X = 25
EndPoint_Y = 20
Dim Shared Queue$
DISPLAY = -1
Do
_Limit 60
While _MouseInput: Wend
If _KeyDown(49) Then
StartPoint_X = _MouseX \ 16 + 1
StartPoint_Y = _MouseY \ 16 + 1
DISPLAY = -1
End If
If _KeyDown(50) Then
EndPoint_X = _MouseX \ 16 + 1
EndPoint_Y = _MouseY \ 16 + 1
DISPLAY = -1
End If
If _MouseButton(1) Then
Grid(_MouseX \ 16 + 1, _MouseY \ 16 + 1) = 0
DISPLAY = -1
End If
If _MouseButton(2) Then
Grid(_MouseX \ 16 + 1, _MouseY \ 16 + 1) = 65535
DISPLAY = -1
End If
If DISPLAY = 0 Then _Continue
Cls
For I = LBound(Grid2, 1) To UBound(Grid2, 1): For J = LBound(Grid2, 2) To UBound(Grid, 2)
Grid2(I, J) = Grid(I, J)
Next J, I
Queue$ = ListNew$
QueueAdd EndPoint_X, EndPoint_Y
Do
If ListLength(Queue$) = 0 Then Exit Do
QueueRemove X, Y
If X < UBound(Grid2, 1) Then If Grid2(X + 1, Y) = 0 Then QueueAdd X + 1, Y: Grid2(X + 1, Y) = Grid2(X, Y) + 1
If X > LBound(Grid2, 1) Then If Grid2(X - 1, Y) = 0 Then QueueAdd X - 1, Y: Grid2(X - 1, Y) = Grid2(X, Y) + 1
If Y < UBound(Grid2, 2) Then If Grid2(X, Y + 1) = 0 Then QueueAdd X, Y + 1: Grid2(X, Y + 1) = Grid2(X, Y) + 1
If Y > LBound(Grid2, 2) Then If Grid2(X, Y - 1) = 0 Then QueueAdd X, Y - 1: Grid2(X, Y - 1) = Grid2(X, Y) + 1
Loop
For X = LBound(Grid2, 1) To UBound(Grid2, 1): For Y = LBound(Grid2, 2) To UBound(Grid2, 2)
If Grid2(X, Y) = 65535 Then Line (X * 16 - 16, Y * 16 - 16)-(X * 16, Y * 16), _RGB32(255), BF
Next Y, X
CPX = StartPoint_X
CPY = StartPoint_Y
Do
Line (CPX * 16 - 16, CPY * 16 - 16)-(CPX * 16, CPY * 16), _RGB32(191, 191, 0), BF
If CPX < UBound(Grid2, 1) Then If Grid2(CPX + 1, CPY) < Grid2(CPX, CPY) Then CPX = CPX + 1: _Continue
If CPX > LBound(Grid2, 1) Then If Grid2(CPX - 1, CPY) < Grid2(CPX, CPY) Then CPX = CPX - 1: _Continue
If CPY < UBound(Grid2, 2) Then If Grid2(CPX, CPY + 1) < Grid2(CPX, CPY) Then CPY = CPY + 1: _Continue
If CPY > LBound(Grid2, 2) Then If Grid2(CPX, CPY - 1) < Grid2(CPX, CPY) Then CPY = CPY - 1: _Continue
Exit Do
If CPX = EndPoint_X And CPY = EndPoint_Y Then Exit Do
Loop
Line (StartPoint_X * 16 - 16, StartPoint_Y * 16 - 16)-(StartPoint_X * 16, StartPoint_Y * 16), _RGB32(0, 255, 0), BF
Line (EndPoint_X * 16 - 16, EndPoint_Y * 16 - 16)-(EndPoint_X * 16, EndPoint_Y * 16), _RGB32(255, 0, 0), BF
_Display
DISPLAY = 0
Loop Until Inp(&H60) = 1
System
Sub QueueAdd (X As Integer, Y As Integer)
Queue$ = ListAdd$(Queue$, MKI$(X) + MKI$(Y))
End Sub
Sub QueueRemove (X As Integer, Y As Integer)
T$ = ListGet$(Queue$, 1)
X = CVI(Left$(T$, 2))
Y = CVI(Right$(T$, 2))
Queue$ = ListDelete$(Queue$, 1)
End Sub
Function ListNew$
ListNew$ = MKL$(0)
End Function
Function ListLength~& (__List As String)
ListLength~& = CVL(Mid$(__List, 1, 4))
End Function
Function ListAdd$ (__List As String, __Item As String)
ListAdd$ = MKL$(CVL(Mid$(__List, 1, 4)) + 1) + Mid$(__List, 5) + MKI$(Len(__Item)) + __Item
End Function
Function ListInsert$ (__List As String, __ItemNumber As _Unsigned Long, __Item As String)
Dim As _Unsigned Long __nItems, __I, __OFFSET
Dim As _Unsigned Integer __LEN
__nItems = CVL(Mid$(__List, 1, 4))
__OFFSET = 5
If __ItemNumber > __nItems Then
If __ItemNumber = __nItems + 1 Then ListInsert$ = ListAdd$(__List, __Item) Else Exit Function
End If
For __I = 1 To __ItemNumber - 1
__LEN = CVI(Mid$(__List, __OFFSET, 2))
Print Mid$(__List, __OFFSET + 2, __LEN)
__OFFSET = __OFFSET + __LEN + 2
Next __I
ListInsert$ = MKL$(CVL(Mid$(__List, 1, 4)) + 1) + Mid$(__List, 5, __OFFSET - 5) + MKI$(Len(__Item)) + __Item + Mid$(__List, __OFFSET)
End Function
Sub ListPrint (__List As String)
Dim As _Unsigned Long __nItems, __I, __OFFSET
Dim As _Unsigned Integer __LEN
__nItems = CVL(Mid$(__List, 1, 4))
__OFFSET = 5
Print "[";
For __I = 1 To __nItems
__LEN = CVI(Mid$(__List, __OFFSET, 2))
Print Mid$(__List, __OFFSET + 2, __LEN);
If __I < __nItems Then Print ",";
__OFFSET = __OFFSET + __LEN + 2
Next __I
Print "]"
End Sub
Function ListGet$ (__List As String, __ItemNumber As _Unsigned Long)
Dim As _Unsigned Long __nItems, __I, __OFFSET
Dim As _Unsigned Integer __LEN
__nItems = CVL(Mid$(__List, 1, 4))
If __ItemNumber > __nItems Then Exit Function
__OFFSET = 5
For __I = 1 To __nItems
__LEN = CVI(Mid$(__List, __OFFSET, 2))
If __I = __ItemNumber Then ListGet$ = Mid$(__List, __OFFSET + 2, __LEN): Exit Function
__OFFSET = __OFFSET + __LEN + 2
Next __I
End Function
Function ListDelete$ (__List As String, __ItemNumber As _Unsigned Long)
Dim As _Unsigned Long __nItems, __I, __OFFSET
Dim As _Unsigned Integer __LEN
__nItems = CVL(Mid$(__List, 1, 4))
__OFFSET = 5
For __I = 1 To __nItems
__LEN = CVI(Mid$(__List, __OFFSET, 2))
If __I = __ItemNumber Then
ListDelete$ = MKL$(__nItems - 1) + Mid$(__List, 5, __OFFSET - 5) + Mid$(__List, __OFFSET + __LEN + 2)
Exit Function
End If
__OFFSET = __OFFSET + __LEN + 2
Next __I
End Function
|
|
|
SHA1 and TOTP |
Posted by: Ra7eN - 08-21-2024, 01:35 AM - Forum: General Discussion
- Replies (19)
|
|
Long time no visit (shame on me - not entirely though LOL, was around under the old OLD site. cant find my stuff meh)
Ok I digress
So I have me a software so well, that I use it religiously for myself LOL. THAT IS RARE!! I usually ditch it.
I could not find a PWM(password manager) that diid everything I wanted, and totally 100% offline, and I even used an encryption that in its original form too 300yrs to break LOL (long time ago) so I created it in qb64, then added a salt. and POOF pretty impressive for DIY stuff. And I even themed it after L.O.R.D. if you don't know, don't ask.
aaaaannnnyyyyy ways, I have the TOTP working, but i have the shell out to a simple python script to do it, What i want to do is make this 100% internal, but qb64 lacks some serious encryption toys. uhg.
Has anyone found a way to get a working TOTP in qb64?
I have quite abit of scrap code, SHA1, HMAC_SHA1, timestamp etc.. although not likely they work at all. I had to convert much of it, and QB64 doesnt like much of this encryption scripts.
If not it's ok, works flawless as it is right now. But would love to get this working 100% qb64
Help?
|
|
|
Connect / Disconnect WiFi and Hibernate |
Posted by: Pete - 08-20-2024, 02:57 AM - Forum: Utilities
- Replies (9)
|
|
Note: This post has been edited to place the updated code here.
Network Connect Routine (Does not trigger a Windows UAC response).
Code: (Select All)
Width 36, 3
Color 15, 1: Cls
_Font 16
Locate 2, 2
Print "Connecting to your network...";
Shell _DontWait _Hide "netsh wlan connect name=YOUR WIFI NAME HERE"
_Delay 2
System
Create the exe file, right click it, and send it to your desktop.
Network Disconnect (Triggers a UAC response, but see how to avoid this by pigging backing onto Task Scheduler).
Code: (Select All)
Width 36, 3
Color 15, 1: Cls
_Font 16
Locate 2, 2
Print "Disconnecting from your network...";
Shell _DontWait _Hide "netsh wlan disconnect"
_Delay 2
System
To avoid the UAC, do this...
1) Open Windows Task Scheduler
2) Add a new folder. I named mine: My Network Disconnect
3) Click on the new folder and select to add a 'new task'. I named my new task: Network Disconnect
4) Make sure you check the box: Run with highest privileges
5) In the trigger tab, select to run on login.
6) In the actions tab, set the path and name of your disconnect program. Mine is: c:\my-exe-files\network disconnect.exe
7) Click OK to save the new task.
Next I used File Explorer to view my c:\my-exe-files\network disconnect.exe. I did a right click, selected 'Properties' and checked the box: Run as Administrator
Finally I tested the new task by clicking the "Run" command in the right panel of the Task Scheduler. It disconnected my internet connection, woohoo!
I made a desktop shortcut of Task Scheduler. I right clicked the shortcut and selected Properties.
I changed the Target to: C:\Windows\System32\schtasks.exe /RUN /TN "\My Network Disconnect\Network Disconnect"
The Start in: C:\Windows\System32
I changed the window to run minimized and saved my changes.
When I Double clicked the shortcut icon, woohoo again, it correctly communicated with Task Scheduler and shut off my wifi connection without getting a UAC prompt.
Hibernate PC (No UAC trigger).
Code: (Select All)
Width 36, 3
Color 15, 1: Cls
_Font 16
Locate 2, 2
Print "Hibernating..."
a$ = "shutdown /h"
Shell _DontWait _Hide a$
System
+1 to Steve and Spriggs for getting involved in the discussion. I had to work it out myself this time, but the support is very much appreciated.
Pete
------------------------------------------------------------
ORIGINAL POST TO EXPLAIN DISCUSSION THAT FOLLOWS
I created a desktop icon from the exe file. It works on my Windows 10. What I would like is to get around the UAC prompt it triggers. (User Account Control). I would have to turn UAC off.
I did try to go around it by making a folder in Task Scheduler. So, if I run it from Task Scheduler, directly, it works without a UAC warning, but when I make a desktop shortcut to trigger Task Scheduler to run it, guess what? If you said UAC asks me to verify I want to let Task Scheduler change my computer, you are correct! Anyway, the article I read for doing this Task Scheduler was 11 years old, so my guess is it worked back then, but not today.
If anyone knows another way around it, I'd love to read your post; otherwise, I'll keep on searching and let you guys know if I find anything.
------------------------------------------------------------
|
|
|
Splashes |
Posted by: SierraKen - 08-19-2024, 10:53 PM - Forum: Programs
- No Replies
|
|
I'm sure most of you think this is very simple, but I'm learning.
Press any key to stop.
Code: (Select All)
'Splashes by SierraKen
Screen _NewImage(800, 600, 32)
_FullScreen _Stretch , _Smooth
start:
s = 10
s2 = -10
s3 = -30
s4 = -50
s6 = -70
l = 0
_Display
Paint (1, 1), _RGB32(0, 0, 200)
b = 241
g = 50
r = 50
Do
_Limit 750
s = s * 1.0015
s2 = s2 * 1.0015
s3 = s3 * 1.0015
s4 = s4 * 1.0015
s5 = s5 * 1.0015
s6 = s6 * 1.0015
For waves = 1 To 7
b = b + 2
If b > 255 Then b = 241
Circle (400 + ((Rnd * 50)), 300 + (Rnd * 50)), s, _RGB32(r, g, b)
Circle (400 + ((Rnd * 50)), 300 + (Rnd * 50)), s2, _RGB32(r, g, b)
Circle (400 + ((Rnd * 50)), 300 + (Rnd * 50)), s3, _RGB32(r, g, b)
Circle (400 + ((Rnd * 50)), 300 + (Rnd * 50)), s4, _RGB32(r, g, b)
Circle (400 + ((Rnd * 50)), 300 + (Rnd * 50)), s5, _RGB32(r, g, b)
Circle (400 + ((Rnd * 50)), 300 + (Rnd * 50)), s6, _RGB32(r, g, b)
Next waves
l = l + 1
If l > 3000 Then GoTo start:
_Display
If l / 31 = Int(l / 31) Then Cls: Paint (1, 1), _RGB32(0, 0, 200)
Loop Until InKey$ <> ""
End
|
|
|
GWBASIC DEF Function |
Posted by: doughayman - 08-18-2024, 10:04 PM - Forum: Works in Progress
- Replies (2)
|
|
Hi,
I'm new to this forum, and to the QB64pe compiler.
I have a gwbasic retro football game that I wrote back in 1987, and am looking to compile it, so that it'll run on Windows 10 pro.
I have a line in my Basic program that your compiler doesn't support:
DEF FNPLCONV(MC)=(31-MC)/2
Any suggestion on how to work around this?
Thank you in advance,
Doug
|
|
|
Holy fiber Batman! |
Posted by: TerryRitchie - 08-18-2024, 01:57 AM - Forum: General Discussion
- Replies (17)
|
|
I'm back online after being offline most of the day. Over the past few months my small little podunk Ohio town (population ~17,000) has had a fiber optic company running fiber underground every where. Last week they started visiting households for people to sign up.
A couple of techs showed up today and spent 4 hours running a fiber optic line to my home.
Get this: for $45 a month I get 250Mbps up and down speeds, no installation charge, no contracts, and no hidden fees! I just did a speed test and I'm getting 7ms latency times with 265 Mbps up and down speeds. Woohoo! I just told the cable company to go pound dirt (that felt good). The cable company's cheapest package is $95 a month for 200Mbps down and 25Mbps up and I could never get better than 25 to 30ms latency times. Heck, if I wanted to for $85 I can get 1Gbps fiber speed or $105 for 2Gbps fiber speed but 250Mbps is plenty for my needs.
The difference in responsiveness with Internet sites is amazing. I now know just how bad the cable company's service was.
The company is called Omni Fiber and they are installing in Ohio and Pennsylvania right now. Be on the look out for them if they come to your area.
Never in my wildest dreams did I believe a little backwoods town like mine would ever get fiber.
|
|
|
Some errors building IDE in feren OS, but it built. Ok to use? |
Posted by: Dav - 08-17-2024, 04:56 PM - Forum: Help Me!
- Replies (2)
|
|
I am trying out feren OS linux. Seems like a nice linux distro. Installing QB64PE I got a bunch of errors, but the IDE was built and ran after running the setup. Question is, should I be worried about these erros an rebuild, or is it good to go as is?
Here's part of my terminal messages showing errors.
- Dav
Quote:gs]
29824 | devices[i].name = "[MOUSE][BUTTON][AXIS][WHEEL]";
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
internal/c/libqb.cpp:29828:30: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
29828 | devices[i].description = "Mouse";
| ^~~~~~~
internal/c/libqb.cpp: In function ‘uint32_t sib()’:
internal/c/libqb.cpp:5884:1: warning: control reaches end of non-void function [-Wreturn-type]
5884 | }
| ^
internal/c/libqb.cpp: In function ‘uint32_t sib_mod0()’:
internal/c/libqb.cpp:5921:1: warning: control reaches end of non-void function [-Wreturn-type]
5921 | }
| ^
internal/c/libqb.cpp: In function ‘uint8_t* rm8()’:
internal/c/libqb.cpp:6104:1: warning: control reaches end of non-void function [-Wreturn-type]
6104 | }
| ^
internal/c/libqb.cpp: In function ‘uint16_t* rm16()’:
internal/c/libqb.cpp:6291:1: warning: control reaches end of non-void function [-Wreturn-type]
6291 | }
| ^
internal/c/libqb.cpp: In function ‘uint32_t* rm32()’:
internal/c/libqb.cpp:6478:1: warning: control reaches end of non-void function [-Wreturn-type]
6478 | }
| ^
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/datetime.cpp -c -o internal/c/libqb/src/datetime.o
internal/c/libqb/src/datetime.cpp: In function ‘void sub_date(qbs*)’:
internal/c/libqb/src/datetime.cpp:207:20: warning: unused parameter ‘date’ [-Wunused-parameter]
207 | void sub_date(qbs *date) {
| ~~~~~^~~~
internal/c/libqb/src/datetime.cpp: In function ‘void sub_time(qbs*)’:
internal/c/libqb/src/datetime.cpp:274:20: warning: unused parameter ‘str’ [-Wunused-parameter]
274 | void sub_time(qbs *str) {
| ~~~~~^~~
internal/c/libqb/src/datetime.cpp: In function ‘qbs* func_time()’:
internal/c/libqb/src/datetime.cpp:296:23: warning: unused variable ‘x2’ [-Wunused-variable]
296 | static int32_t x, x2, i;
| ^~
internal/c/libqb/src/datetime.cpp: At global scope:
internal/c/libqb/src/datetime.cpp:296:23: warning: ‘x2’ defined but not used [-Wunused-variable]
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/error_handle.cpp -c -o internal/c/libqb/src/error_handle.o
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/gfs.cpp -c -o internal/c/libqb/src/gfs.o
internal/c/libqb/src/gfs.cpp: In function ‘int32_t gfs_open(qbs*, int32_t, int32_t, int32_t)’:
internal/c/libqb/src/gfs.cpp:607:26: warning: unused variable ‘x2’ [-Wunused-variable]
607 | static int32_t i, x, x2, x3, e;
| ^~
internal/c/libqb/src/gfs.cpp:607:30: warning: unused variable ‘x3’ [-Wunused-variable]
607 | static int32_t i, x, x2, x3, e;
| ^~
internal/c/libqb/src/gfs.cpp:607:34: warning: unused variable ‘e’ [-Wunused-variable]
607 | static int32_t i, x, x2, x3, e;
| ^
internal/c/libqb/src/gfs.cpp: In function ‘int32_t gfs_write(int32_t, int64_t, uint8_t*, int64_t)’:
internal/c/libqb/src/gfs.cpp:958:20: warning: unused variable ‘e’ [-Wunused-variable]
958 | static int32_t e;
| ^
internal/c/libqb/src/gfs.cpp: In function ‘int32_t gfs_read(int32_t, int64_t, uint8_t*, int64_t)’:
internal/c/libqb/src/gfs.cpp:1017:20: warning: unused variable ‘e’ [-Wunused-variable]
1017 | static int32_t e;
| ^
internal/c/libqb/src/gfs.cpp: In function ‘int32_t gfs_lock(int32_t, int64_t, int64_t)’:
internal/c/libqb/src/gfs.cpp:1110:29: warning: variable ‘f’ set but not used [-Wunused-but-set-variable]
1110 | static gfs_file_struct *f;
| ^
internal/c/libqb/src/gfs.cpp: In function ‘int32_t gfs_unlock(int32_t, int64_t, int64_t)’:
internal/c/libqb/src/gfs.cpp:1152:29: warning: variable ‘f’ set but not used [-Wunused-but-set-variable]
1152 | static gfs_file_struct *f;
| ^
internal/c/libqb/src/gfs.cpp: At global scope:
internal/c/libqb/src/gfs.cpp:1017:20: warning: ‘e’ defined but not used [-Wunused-variable]
1017 | static int32_t e;
| ^
internal/c/libqb/src/gfs.cpp:958:20: warning: ‘e’ defined but not used [-Wunused-variable]
958 | static int32_t e;
| ^
internal/c/libqb/src/gfs.cpp:607:34: warning: ‘e’ defined but not used [-Wunused-variable]
607 | static int32_t i, x, x2, x3, e;
| ^
internal/c/libqb/src/gfs.cpp:607:30: warning: ‘x3’ defined but not used [-Wunused-variable]
607 | static int32_t i, x, x2, x3, e;
| ^~
internal/c/libqb/src/gfs.cpp:607:26: warning: ‘x2’ defined but not used [-Wunused-variable]
607 | static int32_t i, x, x2, x3, e;
| ^~
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/qblist.cpp -c -o internal/c/libqb/src/qblist.o
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/hexoctbin.cpp -c -o internal/c/libqb/src/hexoctbin.o
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/mem.cpp -c -o internal/c/libqb/src/mem.o
internal/c/libqb/src/mem.cpp: In function ‘void sub__memfree(void*)’:
internal/c/libqb/src/mem.cpp:50:46: warning: NULL used in arithmetic [-Wpointer-arith]
50 | if (((mem_block *)(mem))->lock_offset == NULL) {
| ^~~~
internal/c/libqb/src/mem.cpp: In function ‘int32_t func__memexists(void*)’:
internal/c/libqb/src/mem.cpp:134:46: warning: NULL used in arithmetic [-Wpointer-arith]
134 | if (((mem_block *)(blk))->lock_offset == NULL)
| ^~~~
internal/c/libqb/src/mem.cpp: In function ‘void* func__memget(mem_block*, intptr_t, intptr_t)’:
internal/c/libqb/src/mem.cpp:143:46: warning: NULL used in arithmetic [-Wpointer-arith]
143 | if (((mem_block *)(blk))->lock_offset == NULL) {
| ^~~~
internal/c/libqb/src/mem.cpp: In function ‘void sub__memfill(mem_block*, intptr_t, intptr_t, intptr_t, intptr_t)’:
internal/c/libqb/src/mem.cpp:183:47: warning: NULL used in arithmetic [-Wpointer-arith]
183 | if (((mem_block *)(dblk))->lock_offset == NULL) {
| ^~~~
internal/c/libqb/src/mem.cpp: In function ‘void sub__memcopy(void*, intptr_t, intptr_t, void*, intptr_t)’:
internal/c/libqb/src/mem.cpp:232:47: warning: NULL used in arithmetic [-Wpointer-arith]
232 | if (((mem_block *)(sblk))->lock_offset == NULL || ((mem_block *)(dblk))->lock_offset == NULL) {
| ^~~~
internal/c/libqb/src/mem.cpp:232:93: warning: NULL used in arithmetic [-Wpointer-arith]
232 | if (((mem_block *)(sblk))->lock_offset == NULL || ((mem_block *)(dblk))->lock_offset == NULL) {
| ^~~~
internal/c/libqb/src/mem.cpp:234:51: warning: NULL used in arithmetic [-Wpointer-arith]
234 | if (((mem_block *)(sblk))->lock_offset == NULL && ((mem_block *)(dblk))->lock_offset == NULL) {
| ^~~~
internal/c/libqb/src/mem.cpp:234:97: warning: NULL used in arithmetic [-Wpointer-arith]
234 | if (((mem_block *)(sblk))->lock_offset == NULL && ((mem_block *)(dblk))->lock_offset == NULL) {
| ^~~~
internal/c/libqb/src/mem.cpp:238:51: warning: NULL used in arithmetic [-Wpointer-arith]
238 | if (((mem_block *)(sblk))->lock_offset == NULL) {
| ^~~~
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/math.cpp -c -o internal/c/libqb/src/math.o
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/rounding.cpp -c -o internal/c/libqb/src/rounding.o
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/shell.cpp -c -o internal/c/libqb/src/shell.o
internal/c/libqb/src/shell.cpp: In function ‘int64_t func_shell(qbs*)’:
internal/c/libqb/src/shell.cpp:183:20: warning: unused variable ‘i’ [-Wunused-variable]
183 | static int32_t i;
| ^
internal/c/libqb/src/shell.cpp:185:20: warning: variable ‘use_console’ set but not used [-Wunused-but-set-variable]
185 | static int32_t use_console;
| ^~~~~~~~~~~
internal/c/libqb/src/shell.cpp:436:1: warning: label ‘shell_complete’ defined but not used [-Wunused-label]
436 | shell_complete:
| ^~~~~~~~~~~~~~
internal/c/libqb/src/shell.cpp: In function ‘int64_t func__shellhide(qbs*)’:
internal/c/libqb/src/shell.cpp:456:20: warning: unused variable ‘i’ [-Wunused-variable]
456 | static int32_t i;
| ^
internal/c/libqb/src/shell.cpp:655:1: warning: label ‘shell_complete’ defined but not used [-Wunused-label]
655 | shell_complete:;
| ^~~~~~~~~~~~~~
internal/c/libqb/src/shell.cpp: In function ‘void sub_shell(qbs*, int32_t)’:
internal/c/libqb/src/shell.cpp:678:20: warning: unused variable ‘i’ [-Wunused-variable]
678 | static int32_t i;
| ^
internal/c/libqb/src/shell.cpp:680:20: warning: variable ‘use_console’ set but not used [-Wunused-but-set-variable]
680 | static int32_t use_console;
| ^~~~~~~~~~~
internal/c/libqb/src/shell.cpp:926:1: warning: label ‘shell_complete’ defined but not used [-Wunused-label]
926 | shell_complete:
| ^~~~~~~~~~~~~~
internal/c/libqb/src/shell.cpp: In function ‘void sub_shell2(qbs*, int32_t)’:
internal/c/libqb/src/shell.cpp:950:20: warning: unused variable ‘i’ [-Wunused-variable]
950 | static int32_t i;
| ^
internal/c/libqb/src/shell.cpp:1143:1: warning: label ‘shell_complete’ defined but not used [-Wunused-label]
1143 | shell_complete:;
| ^~~~~~~~~~~~~~
internal/c/libqb/src/shell.cpp: In function ‘void sub_shell3(qbs*, int32_t)’:
internal/c/libqb/src/shell.cpp:1157:20: warning: unused variable ‘i’ [-Wunused-variable]
1157 | static int32_t i;
| ^
internal/c/libqb/src/shell.cpp:1332:1: warning: label ‘shell_complete’ defined but not used [-Wunused-label]
1332 | shell_complete:;
| ^~~~~~~~~~~~~~
internal/c/libqb/src/shell.cpp: In function ‘void sub_shell4(qbs*, int32_t)’:
internal/c/libqb/src/shell.cpp:1343:20: warning: unused variable ‘i’ [-Wunused-variable]
1343 | static int32_t i;
| ^
internal/c/libqb/src/shell.cpp:1516:1: warning: label ‘shell_complete’ defined but not used [-Wunused-label]
1516 | shell_complete:;
| ^~~~~~~~~~~~~~
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/qbs.cpp -c -o internal/c/libqb/src/qbs.o
internal/c/libqb/src/qbs.cpp: In function ‘void qbs_concat(uint32_t)’:
internal/c/libqb/src/qbs.cpp:162:23: warning: comparison of integer expressions of different signedness: ‘int32_t’ {aka ‘int’} and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare]
162 | for (i = 0; i < qbs_list_nexti; i++) {
| ~~^~~~~~~~~~~~~~~~
internal/c/libqb/src/qbs.cpp:184:23: warning: comparison of integer expressions of different signedness: ‘int32_t’ {aka ‘int’} and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare]
184 | for (i = 0; i < qbs_list_nexti; i++) {
| ~~^~~~~~~~~~~~~~~~
internal/c/libqb/src/qbs.cpp: In function ‘qbs* qbs_set(qbs*, qbs*)’:
internal/c/libqb/src/qbs.cpp:370:11: warning: comparison of integer expressions of different signedness: ‘int32_t’ {aka ‘int’} and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare]
370 | if (i != qbs_list_nexti)
| ~~^~~~~~~~~~~~~~~~~
internal/c/libqb/src/qbs.cpp: In function ‘int32_t qbs_greaterthan(qbs*, qbs*)’:
internal/c/libqb/src/qbs.cpp:555:8: warning: suggest explicit braces to avoid ambiguous ‘else’ [-Wdangling-else]
555 | if (!l1)
| ^
internal/c/libqb/src/qbs.cpp: In function ‘int32_t qbs_lessthan(qbs*, qbs*)’:
internal/c/libqb/src/qbs.cpp:578:8: warning: suggest explicit braces to avoid ambiguous ‘else’ [-Wdangling-else]
578 | if (!l1)
| ^
internal/c/libqb/src/qbs.cpp: In function ‘int32_t qbs_asc(qbs*, uint32_t)’:
internal/c/libqb/src/qbs.cpp:643:11: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int32_t’ {aka ‘int’} [-Wsign-compare]
643 | if (i < str->len) {
| ~~^~~~~~~~~~
internal/c/libqb/src/shell.cpp: In function ‘void sub_shell(qbs*, int32_t)’:
internal/c/libqb/src/shell.cpp:903:15: warning: ignoring return value of ‘int system(const char*)’, declared with attribute warn_unused_result [-Wunused-result]
903 | system((char *)strz->chr);
| ~~~~~~^~~~~~~~~~~~~~~~~~~
internal/c/libqb/src/shell.cpp: In function ‘void sub_shell2(qbs*, int32_t)’:
internal/c/libqb/src/shell.cpp:1137:11: warning: ignoring return value of ‘int system(const char*)’, declared with attribute warn_unused_result [-Wunused-result]
1137 | system((char *)strz->chr);
| ~~~~~~^~~~~~~~~~~~~~~~~~~
internal/c/libqb/src/shell.cpp: At global scope:
internal/c/libqb/src/shell.cpp:1343:20: warning: ‘i’ defined but not used [-Wunused-variable]
1343 | static int32_t i;
| ^
internal/c/libqb/src/shell.cpp:1157:20: warning: ‘i’ defined but not used [-Wunused-variable]
1157 | static int32_t i;
| ^
internal/c/libqb/src/shell.cpp:950:20: warning: ‘i’ defined but not used [-Wunused-variable]
950 | static int32_t i;
| ^
internal/c/libqb/src/shell.cpp:678:20: warning: ‘i’ defined but not used [-Wunused-variable]
678 | static int32_t i;
| ^
internal/c/libqb/src/shell.cpp:456:20: warning: ‘i’ defined but not used [-Wunused-variable]
456 | static int32_t i;
| ^
internal/c/libqb/src/shell.cpp:183:20: warning: ‘i’ defined but not used [-Wunused-variable]
183 | static int32_t i;
| ^
internal/c/libqb/src/shell.cpp:57:16: warning: ‘int32_t cmd_command(qbs*)’ defined but not used [-Wunused-function]
57 | static int32_t cmd_command(qbs *str2) {
| ^~~~~~~~~~~
internal/c/libqb/src/shell.cpp: In function ‘int64_t func_shell(qbs*)’:
internal/c/libqb/src/shell.cpp:445:12: warning: ‘return_code’ may be used uninitialized in this function [-Wmaybe-uninitialized]
445 | return return_code;
| ^~~~~~~~~~~
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/qbs_str.cpp -c -o internal/c/libqb/src/qbs_str.o
internal/c/libqb/src/qbs_str.cpp: In function ‘qbs* qbs_str(int64_t)’:
internal/c/libqb/src/qbs_str.cpp:18:49: warning: format ‘%lli’ expects argument of type ‘long long int’, but argument 3 has type ‘int64_t’ {aka ‘long int’} [-Wformat=]
18 | tqbs->len = sprintf((char *)tqbs->chr, "% lli", value);
| ~~~~^ ~~~~~
| | |
| | int64_t {aka long int}
| long long int
| % li
internal/c/libqb/src/qbs_str.cpp: In function ‘qbs* qbs_str(uint64_t)’:
internal/c/libqb/src/qbs_str.cpp:47:49: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘uint64_t’ {aka ‘long unsigned int’} [-Wformat=]
47 | tqbs->len = sprintf((char *)tqbs->chr, " %llu", value);
| ~~~^ ~~~~~
| | |
| | uint64_t {aka long unsigned int}
| long long unsigned int
| %lu
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/qbs_cmem.cpp -c -o internal/c/libqb/src/qbs_cmem.o
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/qbs_mk_cv.cpp -c -o internal/c/libqb/src/qbs_mk_cv.o
internal/c/libqb/src/qbs_cmem.cpp: In function ‘void qbs_concat_cmem(uint32_t)’:
internal/c/libqb/src/qbs_cmem.cpp:68:23: warning: comparison of integer expressions of different signedness: ‘int32_t’ {aka ‘int’} and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare]
68 | for (i = 0; i < qbs_cmem_list_nexti; i++) {
| ~~^~~~~~~~~~~~~~~~~~~~~
internal/c/libqb/src/qbs_cmem.cpp: In function ‘bool qbs_new_fixed_cmem(uint8_t*, uint32_t, uint8_t, qbs*)’:
internal/c/libqb/src/qbs_cmem.cpp:128:51: warning: unused parameter ‘size’ [-Wunused-parameter]
128 | bool qbs_new_fixed_cmem(uint8_t *offset, uint32_t size, uint8_t tmp, qbs *newstr) {
| ~~~~~~~~~^~~~
internal/c/libqb/src/qbs_cmem.cpp:128:65: warning: unused parameter ‘tmp’ [-Wunused-parameter]
128 | bool qbs_new_fixed_cmem(uint8_t *offset, uint32_t size, uint8_t tmp, qbs *newstr) {
| ~~~~~~~~^~~
internal/c/libqb/src/qbs_cmem.cpp: In function ‘void qbs_copy_cmem(qbs*, qbs*)’:
internal/c/libqb/src/qbs_cmem.cpp:194:11: warning: comparison of integer expressions of different signedness: ‘int32_t’ {aka ‘int’} and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare]
194 | if (i != qbs_cmem_list_nexti)
| ~~^~~~~~~~~~~~~~~~~~~~~~
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/string_functions.cpp -c -o internal/c/libqb/src/string_functions.o
internal/c/libqb/src/qbs_mk_cv.cpp: In function ‘intptr_t string2o(qbs*)’:
internal/c/libqb/src/qbs_mk_cv.cpp:492:18: warning: comparison of integer expressions of different signedness: ‘int32_t’ {aka ‘int’} and ‘long unsigned int’ [-Wsign-compare]
492 | if (str->len < sizeof(intptr_t)) {
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~
internal/c/libqb/src/qbs_mk_cv.cpp: In function ‘uintptr_t string2uo(qbs*)’:
internal/c/libqb/src/qbs_mk_cv.cpp:501:18: warning: comparison of integer expressions of different signedness: ‘int32_t’ {aka ‘int’} and ‘long unsigned int’ [-Wsign-compare]
501 | if (str->len < sizeof(uintptr_t)) {
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
internal/c/libqb/src/qbs_mk_cv.cpp: In function ‘uint64_t string2ubit(qbs*, uint32_t)’:
internal/c/libqb/src/qbs_mk_cv.cpp:511:18: warning: comparison of integer expressions of different signedness: ‘int32_t’ {aka ‘int’} and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare]
511 | if (str->len < ((bsize + 7) >> 3)) {
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
internal/c/libqb/src/qbs_mk_cv.cpp: In function ‘int64_t string2bit(qbs*, uint32_t)’:
internal/c/libqb/src/qbs_mk_cv.cpp:521:18: warning: comparison of integer expressions of different signedness: ‘int32_t’ {aka ‘int’} and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare]
521 | if (str->len < ((bsize + 7) >> 3)) {
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/http.cpp -c -o internal/c/libqb/src/http.o
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/threading-posix.cpp -c -o internal/c/libqb/src/threading-posix.o
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/glut-main-thread.cpp -c -o internal/c/libqb/src/glut-main-thread.o
internal/c/libqb/src/http.cpp: In function ‘void __fillout_curl_info(handle*)’:
internal/c/libqb/src/http.cpp:112:31: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
112 | if (res != CURLE_OK || cl == -1) {
| ~~~^~~~~
In file included from internal/c/libqb/src/glut-main-thread.cpp:25:
./internal/c/libqb/include/mac-mouse-support.h: In function ‘void macMouseUpdatePosition(int, int)’:
./internal/c/libqb/include/mac-mouse-support.h:10:47: warning: unused parameter ‘x’ [-Wunused-parameter]
10 | static inline void macMouseUpdatePosition(int x, int y) {}
| ~~~~^
./internal/c/libqb/include/mac-mouse-support.h:10:54: warning: unused parameter ‘y’ [-Wunused-parameter]
10 | static inline void macMouseUpdatePosition(int x, int y) {}
| ~~~~^
internal/c/libqb/src/glut-main-thread.cpp: In function ‘void glutWarning(const char*, __va_list_tag*)’:
internal/c/libqb/src/glut-main-thread.cpp:52:37: warning: unused parameter ‘fmt’ [-Wunused-parameter]
52 | static void glutWarning(const char *fmt, va_list lst) {
| ~~~~~~~~~~~~^~~
internal/c/libqb/src/glut-main-thread.cpp:52:50: warning: unused parameter ‘lst’ [-Wunused-parameter]
52 | static void glutWarning(const char *fmt, va_list lst) {
| ~~~~~~~~^~~
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/glut-message.cpp -c -o internal/c/libqb/src/glut-message.o
In file included from internal/c/libqb/src/glut-message.cpp:18:
./internal/c/libqb/include/mac-mouse-support.h: In function ‘void macMouseUpdatePosition(int, int)’:
./internal/c/libqb/include/mac-mouse-support.h:10:47: warning: unused parameter ‘x’ [-Wunused-parameter]
10 | static inline void macMouseUpdatePosition(int x, int y) {}
| ~~~~^
./internal/c/libqb/include/mac-mouse-support.h:10:54: warning: unused parameter ‘y’ [-Wunused-parameter]
10 | static inline void macMouseUpdatePosition(int x, int y) {}
| ~~~~^
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -Wall -Wextra internal/c/libqb/src/glut-msg-queue.cpp -c -o internal/c/libqb/src/glut-msg-queue.o
cc -O2 -DDEPENDENCY_CONSOLE_ONLY -Wall internal/c/parts/gui/tinyfiledialogs.c -c -o internal/c/parts/gui/tinyfiledialogs.o
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -DDEPENDENCY_CONSOLE_ONLY -Wall internal/c/parts/gui/gui.cpp -c -o internal/c/parts/gui/gui.o
In file included from internal/c/parts/gui/gui.cpp:17:
./internal/c/libqb/include/image.h: In function ‘constexpr uint32_t func__rgb32(int32_t, int32_t, int32_t)’:
./internal/c/libqb/include/image.h:116:33: warning: suggest parentheses around arithmetic in operand of ‘|’ [-Wparentheses]
116 | return (r << 16) + (g << 8) + b | 0xFF000000;
| ~~~~~~~~~~~~~~~~~~~~~^~~
./internal/c/libqb/include/image.h: In function ‘constexpr uint32_t func__rgb32(int32_t)’:
./internal/c/libqb/include/image.h:136:33: warning: suggest parentheses around arithmetic in operand of ‘|’ [-Wparentheses]
136 | return (i << 16) + (i << 8) + i | 0xFF000000;
| ~~~~~~~~~~~~~~~~~~~~~^~~
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -DCLIP_ENABLE_IMAGE=1 -DHAVE_XCB_XLIB_H -DHAVE_PNG_H -w internal/c/parts/os/clipboard/clip/clip.cpp -c -o internal/c/parts/os/clipboard/clip/clip.o
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -DCLIP_ENABLE_IMAGE=1 -DHAVE_XCB_XLIB_H -DHAVE_PNG_H -w internal/c/parts/os/clipboard/clip/image.cpp -c -o internal/c/parts/os/clipboard/clip/image.o
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -DCLIP_ENABLE_IMAGE=1 -DHAVE_XCB_XLIB_H -DHAVE_PNG_H -w internal/c/parts/os/clipboard/clip/clip_x11.cpp -c -o internal/c/parts/os/clipboard/clip/clip_x11.o
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -DCLIP_ENABLE_IMAGE=1 -DHAVE_XCB_XLIB_H -DHAVE_PNG_H -Wall -Wextra internal/c/parts/os/clipboard/clipboard.cpp -c -o internal/c/parts/os/clipboard/clipboard.o
In file included from internal/c/parts/os/clipboard/clipboard.cpp:19:
./internal/c/libqb/include/image.h: In function ‘constexpr uint32_t func__rgb32(int32_t, int32_t, int32_t)’:
./internal/c/libqb/include/image.h:116:33: warning: suggest parentheses around arithmetic in operand of ‘|’ [-Wparentheses]
116 | return (r << 16) + (g << 8) + b | 0xFF000000;
| ~~~~~~~~~~~~~~~~~~~~~^~~
./internal/c/libqb/include/image.h: In function ‘constexpr uint32_t func__rgb32(int32_t)’:
./internal/c/libqb/include/image.h:136:33: warning: suggest parentheses around arithmetic in operand of ‘|’ [-Wparentheses]
136 | return (i << 16) + (i << 8) + i | 0xFF000000;
| ~~~~~~~~~~~~~~~~~~~~~^~~
g++ -O2 -no-pie -std=gnu++17 -fno-strict-aliasing -Wno-conversion-null -DFREEGLUT_STATIC -I./internal/c/libqb/include -I./internal/c/parts/core/freeglut/include -I./internal/c/parts/core/glew/include -DDEPENDENCY_SOCKETS -DDEPENDENCY_NO_PRINTER -DDEPENDENCY_ICON -DDEPENDENCY_NO_SCREENIMAGE -I./internal/c/parts/video/font/freetype/include -DDEPENDENCY_CONSOLE_ONLY -w internal/c/parts/video/font/font.cpp -c -o internal/c/parts/video/font/font.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/t42drivr.c -c -o internal/c/parts/video/font/freetype/t42drivr.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/sfwoff.c -c -o internal/c/parts/video/font/freetype/sfwoff.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/otvgpos.c -c -o internal/c/parts/video/font/freetype/otvgpos.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/bdflib.c -c -o internal/c/parts/video/font/freetype/bdflib.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/fttype1.c -c -o internal/c/parts/video/font/freetype/fttype1.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/ftwinfnt.c -c -o internal/c/parts/video/font/freetype/ftwinfnt.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/gxvmorx.c -c -o internal/c/parts/video/font/freetype/gxvmorx.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/otvmath.c -c -o internal/c/parts/video/font/freetype/otvmath.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/ftcbasic.c -c -o internal/c/parts/video/font/freetype/ftcbasic.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/ftinit.c -c -o internal/c/parts/video/font/freetype/ftinit.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/ftadvanc.c -c -o internal/c/parts/video/font/freetype/ftadvanc.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/ttobjs.c -c -o internal/c/parts/video/font/freetype/ttobjs.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/ttgxvar.c -c -o internal/c/parts/video/font/freetype/ttgxvar.o
cc -O3 -I./internal/c/parts/video/font/freetype/include -DFT2_BUILD_LIBRARY -w internal/c/parts/video/font/freetype/ftbbox.c -c -o internal/c/parts/video/font/freetype/ftbbox.o
cc -O3 -I./internal/c/parts/video/font/freety
|
|
|
To Nest or Not to Nest Else |
Posted by: Dimster - 08-17-2024, 03:11 PM - Forum: General Discussion
- Replies (28)
|
|
Other than code efficiency, I'm wondering why I would nest an Else statement v's using multiple ElseIf statements. You guys nest your Elses? or go with ElseIF's
For example"
NESTED ELSE
If (condition) then
....
Else
If (condition) then
....
Else
If (condition) then
....
Else
If (condition) then
End if
End if
End if
UNNESTED ElseIF
If (condition) then
....
ElseIf (condition) then
....
ElseIf (condition) then
....
ElseIf (condition) then
...
End if
Just curious
|
|
|
Simulated Dancing Tesla Coil |
Posted by: SierraKen - 08-17-2024, 04:44 AM - Forum: SierraKen
- Replies (7)
|
|
If you don't know already, a Tesla Coil is a metal rod that shoots out highly powered lightning bolts, which was invented by Nicola Tesla. This program is a simulation of that, where you tell it a .mp3 song to play and the lightning bolts jump around dancing to the song. There have been many real shows like this with real Tesla Coils, using music.
This zip file also contains a small music album I created around 2005 or so and there's no lyrics, just electronic dance music I made using sound loops.
Enjoy!
Edit: This zip removed to add the ability to use both 64 and 32 bit computers. The update is below.
|
|
|
|