ObjFW  Check-in [089d52ca9a]

Overview
Comment:GitHub Actions: Add ObjC++ tests
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | trunk
Files: files | file ages | folders
SHA3-256: 089d52ca9af72ed108d4eac6908e0942a69fa5c37e527cc444371d980d1b51a7
User & Date: js on 2024-11-04 01:05:50
Other Links: manifest | tags
Context
2024-11-04
01:05
GitHub Actions: Add ObjC++ tests Leaf check-in: 089d52ca9a user: js tags: trunk
00:23
Add missing nullability for __getmainargs() check-in: 52d24aa522 user: js tags: trunk
Changes

Added .github/workflows/CXXTest.mm version [9d47896274].
































1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
#import <ObjFW/ObjFW.h>

#include <string>

@interface CXXTest: OFObject <OFApplicationDelegate>
@end

OF_APPLICATION_DELEGATE(CXXTest)

@implementation CXXTest
- (void)applicationDidFinishLaunching: (OFNotification *)notification
{
	std::string output;

	try {
		@try {
			throw @"Hello ";
		} @catch (OFString *string) {
			output += string.UTF8String;
		}

		throw std::string("C++");
	} catch (std::string &string) {
		output += "C++";
	}

	OFLog(@"%s", output.c_str());

	[OFApplication terminate];
}
@end

Modified .github/workflows/macos-14.yml from [31e00bb0dd] to [cf80eecb8f].

25
26
27
28
29
30
31




25
26
27
28
29
30
31
32
33
34
35







+
+
+
+
      run: ./configure ${{ matrix.configure_flags }}
    - name: make
      run: make -j$(sysctl -n hw.logicalcpu)
    - name: make check
      run: make check
    - name: make install
      run: sudo make install
    - name: C++ test
      run: |
        objfw-compile -o cxxtest .github/workflows/CXXTest.mm
        ./cxxtest

Modified .github/workflows/ubuntu-latest.yml from [ffe8f603bc] to [e45a841261].

35
36
37
38
39
40
41




35
36
37
38
39
40
41
42
43
44
45







+
+
+
+
      run: ./configure ${{ matrix.configure_flags }}
    - name: make
      run: make -j$(nproc)
    - name: make check
      run: make check
    - name: make install
      run: sudo make install
    - name: C++ test
      run: |
        objfw-compile -o cxxtest .github/workflows/CXXTest.mm
        ./cxxtest