Skip to content

Commit b1b4726

Browse files
committed
Merge 10.9 into 10.10
2 parents c2d5523 + 864bbd4 commit b1b4726

File tree

148 files changed

+4689
-2437
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

148 files changed

+4689
-2437
lines changed

cmake/cpack_rpm.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -299,6 +299,7 @@ ENDIF()
299299
# MDEV-24629, we need it outside of ELSIFs
300300
IF(RPM MATCHES "fedora")
301301
ALTERNATIVE_NAME("common" "mariadb-connector-c-config" ${MARIADB_CONNECTOR_C_VERSION}-1)
302+
ALTERNATIVE_NAME("shared" "mariadb-connector-c" ${MARIADB_CONNECTOR_C_VERSION}-1)
302303
ENDIF()
303304

304305
SET(PYTHON_SHEBANG "/usr/bin/python3" CACHE STRING "python shebang")
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
# It's intentional that bzip2 compression plugin doesn't have symbols from libc
22
# More info https://jira.mariadb.org/browse/MDEV-28120
3-
library-not-linked-against-libc usr/lib/mysql/plugin/provider_bzip2.so
3+
library-not-linked-against-libc usr/lib/mysql/plugin/provider_bzip2.so
4+
library-not-linked-against-libc [usr/lib/mysql/plugin/provider_bzip2.so]
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
# It's intentional that LZ4 compression plugin doesn't have symbols from libc
22
# More info https://jira.mariadb.org/browse/MDEV-28120
3-
library-not-linked-against-libc usr/lib/mysql/plugin/provider_lz4.so
3+
library-not-linked-against-libc usr/lib/mysql/plugin/provider_lz4.so
4+
library-not-linked-against-libc [usr/lib/mysql/plugin/provider_lz4.so]
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
# It's intentional that LZMA compression plugin doesn't have symbols from libc
22
# More info https://jira.mariadb.org/browse/MDEV-28120
3-
library-not-linked-against-libc usr/lib/mysql/plugin/provider_lzma.so
3+
library-not-linked-against-libc usr/lib/mysql/plugin/provider_lzma.so
4+
library-not-linked-against-libc [usr/lib/mysql/plugin/provider_lzma.so]
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
# It's intentional that LZO compression plugin doesn't have symbols from libc
22
# More info https://jira.mariadb.org/browse/MDEV-28120
3-
library-not-linked-against-libc usr/lib/mysql/plugin/provider_lzo.so
3+
library-not-linked-against-libc usr/lib/mysql/plugin/provider_lzo.so
4+
library-not-linked-against-libc [usr/lib/mysql/plugin/provider_lzo.so]
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
# It's intentional that Snappy compression plugin doesn't have symbols from libc
22
# More info https://jira.mariadb.org/browse/MDEV-28120
3-
library-not-linked-against-libc usr/lib/mysql/plugin/provider_snappy.so
3+
library-not-linked-against-libc usr/lib/mysql/plugin/provider_snappy.so
4+
library-not-linked-against-libc [usr/lib/mysql/plugin/provider_snappy.so]

debian/salsa-ci.yml

Lines changed: 90 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,14 @@ build i386:
5656
script:
5757
- *autobake-deb-steps
5858

59+
build bullseye-backports:
60+
extends: .build-package
61+
variables:
62+
RELEASE: bullseye-backports
63+
64+
# Buster only has libfmt 6.1 but 7.0 is required, so backport build for Buster
65+
# is not possible unless somebody packages libfmt7-dev for Buster.
66+
5967
build sid:
6068
extends: .build-package
6169
script:
@@ -112,35 +120,64 @@ blhc:
112120
mysql --table -e "SELECT * FROM plugin;" mysql
113121
mysql --table -e "SHOW PLUGINS;" mysql
114122

123+
# Readline was removed from Debian Sid (and Bullseye) in Feb 2021. To be able to install older
124+
# versions of MariaDB that depend on it, fetch and install it from Buster.
125+
.test-install-readline-in-sid-for-backwards-compat: &test-install-readline-in-sid-for-backwards-compat |
126+
curl -sS -O http://ftp.de.debian.org/debian/pool/main/r/readline5/libreadline5_5.2+dfsg-3+b13_amd64.deb
127+
apt-get -qq install --no-install-recommends --yes ./libreadline5_5.2+dfsg-3+b13_amd64.deb
128+
115129
.test-enable-bullseye-repos: &test-enable-bullseye-repos
116130
# Replace any old repos with just Sid
117131
- echo 'deb http://deb.debian.org/debian bullseye main' > /etc/apt/sources.list
118132
# Upgrade minimal stack first
119133
- apt-get update -qq
120134
- apt-get install -y apt
121135

122-
.test-enable-bullseye-backports-repos: &test-enable-bullseye-backports-repos |
123-
# Enable bullseye-backports (assumes environment already Debian Bullseye)
124-
echo 'deb http://deb.debian.org/debian bullseye-backports main' > /etc/apt/sources.list.d/bullseye-backports.list
136+
.test-enable-buster-backports-repos: &test-enable-buster-backports-repos |
137+
# Enable buster-backports (assumes environment already Debian Buster)
138+
echo 'deb http://deb.debian.org/debian buster-backports main' > /etc/apt/sources.list.d/buster-backports.list
125139
# Increase default backports priority policy from '100' to '500' so it can actually be used
126140
cat << EOF > /etc/apt/preferences.d/enable-backports-to-satisfy-dependencies
127141
Package: *
128-
Pin: release n=bullseye-*
142+
Pin: release n=buster-*
129143
Pin-Priority: 500
130144
EOF
131145
apt-get update -qq
132146

133-
.test-enable-buster-backports-repos: &test-enable-buster-backports-repos |
134-
# Enable buster-backports (assumes environment already Debian Buster)
135-
echo 'deb http://deb.debian.org/debian buster-backports main' > /etc/apt/sources.list.d/buster-backports.list
147+
.test-enable-bullseye-backports-repos: &test-enable-bullseye-backports-repos |
148+
# Enable bullseye-backports (assumes environment already Debian Bullseye)
149+
echo 'deb http://deb.debian.org/debian bullseye-backports main' > /etc/apt/sources.list.d/bullseye-backports.list
136150
# Increase default backports priority policy from '100' to '500' so it can actually be used
137151
cat << EOF > /etc/apt/preferences.d/enable-backports-to-satisfy-dependencies
138152
Package: *
139-
Pin: release n=buster-*
153+
Pin: release n=bullseye-*
140154
Pin-Priority: 500
141155
EOF
142156
apt-get update -qq
143157

158+
.test-enable-sid-repos: &test-enable-sid-repos
159+
# Apply usrmerge workaround for Stretch/Buster/Bullseye to Bookworm/Sid upgrades
160+
- echo 'this system will not be supported in the future' > /etc/unsupported-skip-usrmerge-conversion
161+
# Replace any old repos with just Sid
162+
- echo 'deb http://deb.debian.org/debian sid main' > /etc/apt/sources.list
163+
# Upgrade minimal stack first
164+
- apt-get update -qq
165+
# Next step will fail on https://bugs.debian.org/993755
166+
# /usr/bin/perl: error while loading shared libraries: libcrypt.so.1: cannot
167+
# open shared object file: No such file or directory
168+
# dpkg: error processing package libc6:amd64 (--configure):
169+
- apt-get install -y apt || true
170+
# Apply workaround
171+
- cd $(mktemp -d) # Use temp dir where apt can download and unpack files
172+
- apt-get -y download libcrypt1
173+
- dpkg-deb -x libcrypt1_*.deb .
174+
- cp -ra lib/* /lib/
175+
- cd - # Back to /builds/$USER/mariadb-server/debian/output
176+
- find /lib/*/libcrypt.* -ls # Show that new libcrypt is there
177+
- apt-get -y --fix-broken install
178+
# Complete upgrade of minimal stack
179+
- apt-get install -y apt
180+
144181
.test-install: &test-install
145182
# Install MariaDB built in this commit
146183
- apt-get install -y ./*.deb
@@ -252,35 +289,6 @@ mariadb-10.5 Bullseye upgrade:
252289
variables:
253290
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
254291

255-
mariadb-10.3 with Buster backports upgrade:
256-
stage: upgrade extras
257-
needs:
258-
- job: build buster-backports
259-
image: debian:buster
260-
artifacts:
261-
when: always
262-
name: "$CI_BUILD_NAME"
263-
paths:
264-
- ${WORKING_DIR}/debug
265-
script:
266-
- *test-prepare-container
267-
# Install everything MariaDB 10.3 currently in Debian Buster
268-
- apt-get install -y 'default-mysql*' 'mariadb-*' 'libmariadb*'
269-
# Verify installation of MariaDB from Buster
270-
- *test-verify-initial
271-
# Buster backports is needed for liburing1 (>= 0.7) and galera-4 (>= 26.4)
272-
- *test-enable-buster-backports-repos
273-
- *test-install
274-
# mariadb-10.3 in Buster ships a /etc/init.d/mysql so it should continue to work
275-
- service mysql status
276-
- service mariadb status
277-
- *test-verify-final
278-
variables:
279-
GIT_STRATEGY: none
280-
except:
281-
variables:
282-
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
283-
284292
mariadb-10.3 Buster upgrade:
285293
stage: upgrade from Buster
286294
needs:
@@ -490,7 +498,9 @@ mysql-8.0 from Ubuntu 22.04 upgrade:
490498
variables:
491499
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
492500

493-
mariadb.org 10.9 to mariadb upgrade:
501+
# Upgrading from MySQL 8.0 with datadir in place is not possible. Users need to do a data dump.
502+
# The Debian maintainer scripts detect this situation and simply moves old datadir aside and start fresh.
503+
mysql-community-cluster-8.0 from MySQL.com upgrade:
494504
stage: upgrade extras
495505
needs:
496506
- job: build
@@ -502,28 +512,30 @@ mariadb.org 10.9 to mariadb upgrade:
502512
- ${WORKING_DIR}/debug
503513
script:
504514
- *test-prepare-container
505-
- apt install -y curl
506-
- curl -sS https://mariadb.org/mariadb_release_signing_key.asc -o /etc/apt/trusted.gpg.d/mariadb.asc
507-
- echo "deb https://deb.mariadb.org/10.9/debian ${RELEASE} main" > /etc/apt/sources.list.d/mariadb.list
508-
- apt-get update
509-
- apt-get install -y mariadb-server-10.9
510-
- *test-verify-initial
511-
# Install MariaDB built in this commit
512-
# Force downgrades so our version installs on top of upstream revision, e.g. 1:10.9.1-1 vs 1:10.9.1+mariadb~sid
513-
- apt-get install -y --allow-downgrades ./*.deb
514-
# Verify installation of MariaDB built in this commit
515-
- dpkg -l | grep -iE 'maria|mysql|galera' || true # List installed
516-
- mariadb --version # Client version
517-
- service mariadb status # There is no init.d/mysql in MariaDB 10.5+
515+
- apt-get install --no-install-recommends --yes ca-certificates curl systemctl
516+
- curl -sS "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x859be8d7c586f538430b19c2467b942d3a79bd29" -o /etc/apt/trusted.gpg.d/mysql.asc
517+
- echo "deb https://repo.mysql.com/apt/debian/ bullseye mysql-cluster-8.0" > /etc/apt/sources.list.d/mysql.list
518+
- apt-get update -qq
519+
- apt-get install -y mysql-cluster-community-server
520+
- sed 's/ExecStartPre=+/ExecStartPre=/' -i /lib/systemd/system/mysql.service # Hack to make file compatible with systemctl shim
521+
- systemctl start mysql
522+
- dpkg -l | grep -iE 'maria|mysql|galera'
523+
- systemctl status mysql; mysql -e 'SELECT VERSION()'
524+
- systemctl stop mysql # Stop manually as maintainer scripts don't handle this with systemctl shim
525+
- *test-install
526+
# Ignore systemctl shim result as MariaDB systemd file is incompatible with it and yields:
527+
# ERROR:systemctl:the ExecStartPre control process exited with error code
528+
- systemctl status mysql || true
529+
- mysql -e 'SELECT VERSION()' || true
530+
- sleep 5 # Give the mysql_upgrade a bit of time to complete before querying the server
518531
- *test-verify-final
519532
variables:
520533
GIT_STRATEGY: none
521534
except:
522535
variables:
523536
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
524-
allow_failure: true
525537

526-
mariadb.org-10.8 to mariadb upgrade:
538+
mariadb.org 10.9 to mariadb upgrade:
527539
stage: upgrade extras
528540
needs:
529541
- job: build
@@ -537,9 +549,9 @@ mariadb.org-10.8 to mariadb upgrade:
537549
- *test-prepare-container
538550
- apt install -y curl
539551
- curl -sS https://mariadb.org/mariadb_release_signing_key.asc -o /etc/apt/trusted.gpg.d/mariadb.asc
540-
- echo "deb https://deb.mariadb.org/10.8/debian ${RELEASE} main" > /etc/apt/sources.list.d/mariadb.list
552+
- echo "deb https://deb.mariadb.org/10.9/debian ${RELEASE} main" > /etc/apt/sources.list.d/mariadb.list
541553
- apt-get update
542-
- apt-get install -y mariadb-server-10.8
554+
- apt-get install -y mariadb-server-10.9 mariadb-client-10.9
543555
- *test-verify-initial
544556
# Install MariaDB built in this commit
545557
# Force downgrades so our version installs on top of upstream revision, e.g. 1:10.9.1-1 vs 1:10.9.1+mariadb~sid
@@ -556,9 +568,7 @@ mariadb.org-10.8 to mariadb upgrade:
556568
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
557569
allow_failure: true
558570

559-
# Upgrading from MySQL 8.0 with datadir in place is not possible. Users need to do a data dump.
560-
# The Debian maintainer scripts detect this situation and simply moves old datadir aside and start fresh.
561-
mysql-community-cluster-8.0 from MySQL.com upgrade:
571+
mariadb.org-10.8 to mariadb upgrade:
562572
stage: upgrade extras
563573
needs:
564574
- job: build
@@ -570,28 +580,26 @@ mysql-community-cluster-8.0 from MySQL.com upgrade:
570580
- ${WORKING_DIR}/debug
571581
script:
572582
- *test-prepare-container
573-
- apt-get install --no-install-recommends --yes ca-certificates curl systemctl
574-
- curl -sS "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x859be8d7c586f538430b19c2467b942d3a79bd29" -o /etc/apt/trusted.gpg.d/mysql.asc
575-
- echo "deb https://repo.mysql.com/apt/debian/ bullseye mysql-cluster-8.0" > /etc/apt/sources.list.d/mysql.list
576-
- apt-get update -qq
577-
- apt-get install -y mysql-cluster-community-server
578-
- sed 's/ExecStartPre=+/ExecStartPre=/' -i /lib/systemd/system/mysql.service # Hack to make file compatible with systemctl shim
579-
- systemctl start mysql
580-
- dpkg -l | grep -iE 'maria|mysql|galera'
581-
- systemctl status mysql; mysql -e 'SELECT VERSION()'
582-
- systemctl stop mysql # Stop manually as maintainer scripts don't handle this with systemctl shim
583-
- *test-install
584-
# Ignore systemctl shim result as MariaDB systemd file is incompatible with it and yields:
585-
# ERROR:systemctl:the ExecStartPre control process exited with error code
586-
- systemctl status mysql || true
587-
- mysql -e 'SELECT VERSION()' || true
588-
- sleep 5 # Give the mysql_upgrade a bit of time to complete before querying the server
583+
- apt install -y curl
584+
- curl -sS https://mariadb.org/mariadb_release_signing_key.asc -o /etc/apt/trusted.gpg.d/mariadb.asc
585+
- echo "deb https://deb.mariadb.org/10.8/debian ${RELEASE} main" > /etc/apt/sources.list.d/mariadb.list
586+
- apt-get update
587+
- apt-get install -y mariadb-server-10.8
588+
- *test-verify-initial
589+
# Install MariaDB built in this commit
590+
# Force downgrades so our version installs on top of upstream revision, e.g. 1:10.9.1-1 vs 1:10.9.1+mariadb~sid
591+
- apt-get install -y --allow-downgrades ./*.deb
592+
# Verify installation of MariaDB built in this commit
593+
- dpkg -l | grep -iE 'maria|mysql|galera' || true # List installed
594+
- mariadb --version # Client version
595+
- service mariadb status # There is no init.d/mysql in MariaDB 10.5+
589596
- *test-verify-final
590597
variables:
591598
GIT_STRATEGY: none
592599
except:
593600
variables:
594601
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
602+
allow_failure: true
595603

596604
mariadb.org-10.7 to mariadb upgrade:
597605
stage: upgrade extras
@@ -685,11 +693,11 @@ mariadb.org-10.5 to mariadb upgrade:
685693
variables:
686694
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
687695

688-
mariadb.org-10.4 to mariadb with Buster backports upgrade:
696+
mariadb.org-10.4 to mariadb upgrade:
689697
stage: upgrade extras
690698
needs:
691-
- job: build buster-backports
692-
image: debian:buster
699+
- job: build
700+
image: debian:${RELEASE}
693701
artifacts:
694702
when: always
695703
name: "$CI_BUILD_NAME"
@@ -701,6 +709,7 @@ mariadb.org-10.4 to mariadb with Buster backports upgrade:
701709
- curl -sS https://mariadb.org/mariadb_release_signing_key.asc -o /etc/apt/trusted.gpg.d/mariadb.asc
702710
- echo "deb https://archive.mariadb.org/mariadb-10.4/repo/debian buster main" > /etc/apt/sources.list.d/mariadb.list
703711
- apt-get update -qq
712+
- *test-install-readline-in-sid-for-backwards-compat
704713
- apt-get install -y mariadb-server-10.4
705714
# MariaDB.org version of 10.4 and early 10.5 do not install an init file, so
706715
# it must be installed here manually
@@ -719,11 +728,11 @@ mariadb.org-10.4 to mariadb with Buster backports upgrade:
719728
variables:
720729
- $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/
721730

722-
mariadb.org-10.3 to mariadb with Buster backports upgrade:
731+
mariadb.org-10.3 to mariadb upgrade:
723732
stage: upgrade extras
724733
needs:
725-
- job: build bullseye-backports
726-
image: debian:bullseye
734+
- job: build
735+
image: debian:${RELEASE}
727736
artifacts:
728737
when: always
729738
name: "$CI_BUILD_NAME"
@@ -735,6 +744,7 @@ mariadb.org-10.3 to mariadb with Buster backports upgrade:
735744
- curl -sS https://mariadb.org/mariadb_release_signing_key.asc -o /etc/apt/trusted.gpg.d/mariadb.asc
736745
- echo "deb https://archive.mariadb.org/mariadb-10.3/repo/debian buster main" > /etc/apt/sources.list.d/mariadb.list
737746
- apt-get update -qq
747+
- *test-install-readline-in-sid-for-backwards-compat
738748
- apt-get install -y mariadb-server-10.3
739749
- *test-verify-initial
740750
# Buster backports is needed for liburing1 (>= 0.7) and galera-4 (>= 26.4)

debian/source/lintian-overrides

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# MariaDB use high enough debhelper so this is should
2+
# be considered as bug in lintia
3+
missing-build-dependency-for-dh-addon systemd *
14
# Necessary for drop-in-place-replacement upgrades on mysql-server/-client
25
# since package breaks/replaces these but at the same time also provides them
36
version-substvar-for-external-package mariadb-client-core -> mysql-client-5.5
@@ -9,23 +12,11 @@ version-substvar-for-external-package mariadb-server-10.9 -> mysql-client-8.*
912
version-substvar-for-external-package mariadb-client-10.9 -> mysql-client-core-5.*
1013
version-substvar-for-external-package mariadb-client-10.9 -> mysql-client-core-8.*
1114
version-substvar-for-external-package libmariadbd-dev -> libmariadbclient-dev
12-
# Intentional version-substvar-for-external-package as long as mariadb-server
13-
# provides mariadb-server-10.10 and mariadb-client provides mariadb-client-10.10
14-
version-substvar-for-external-package Conflicts (line 408) ${source:Version} mariadb-client -> mariadb-client-10.10
15-
version-substvar-for-external-package Conflicts (line 575) ${source:Version} mariadb-server-core -> mariadb-server-core-10.10
16-
version-substvar-for-external-package Conflicts (line 711) ${source:Version} mariadb-server -> mariadb-server-10.10
15+
# These are left for reason version-substvar-for-external-package
1716
version-substvar-for-external-package Conflicts (line 95) ${source:Version} libmariadb-dev-compat -> libmariadbclient-dev
1817
version-substvar-for-external-package Replaces (line 109) ${source:Version} libmariadb-dev-compat -> libmariadbclient-dev
19-
version-substvar-for-external-package Replaces (line 330) ${source:Version} mariadb-client-core -> mariadb-client-10.10
20-
version-substvar-for-external-package Replaces (line 330) ${source:Version} mariadb-client-core -> mariadb-server-core-10.10
21-
version-substvar-for-external-package Replaces (line 481) ${source:Version} mariadb-client -> mariadb-client-10.10
22-
version-substvar-for-external-package Replaces (line 481) ${source:Version} mariadb-client -> mariadb-client-core-10.10
23-
version-substvar-for-external-package Replaces (line 481) ${source:Version} mariadb-client -> mariadb-server-10.10
24-
version-substvar-for-external-package Replaces (line 481) ${source:Version} mariadb-client -> mariadb-server-core-10.10
25-
version-substvar-for-external-package Replaces (line 626) ${source:Version} mariadb-server-core -> mariadb-client-10.10
26-
version-substvar-for-external-package Replaces (line 626) ${source:Version} mariadb-server-core -> mariadb-server-10.10
27-
version-substvar-for-external-package Replaces (line 748) ${source:Version} mariadb-server -> mariadb-client-10.10
28-
version-substvar-for-external-package Replaces (line 748) ${source:Version} mariadb-server -> mariadb-server-10.10
18+
version-substvar-for-external-package Conflicts ${source:Version} libmariadb-dev-compat -> libmariadbclient-dev [*]
19+
version-substvar-for-external-package Replaces ${source:Version} libmariadb-dev-compat -> libmariadbclient-dev [*]
2920
# ColumnStore not used in Debian, safe to ignore. Reported upstream in https://jira.mariadb.org/browse/MDEV-24124
3021
source-is-missing storage/columnstore/columnstore/utils/jemalloc/libjemalloc.so.2
3122
source-is-missing [storage/columnstore/columnstore/utils/jemalloc/libjemalloc.so.2]

include/m_string.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ extern ulonglong strtoull(const char *str, char **ptr, int base);
201201

202202
#ifdef __cplusplus
203203
#include <type_traits>
204-
template<typename T> inline const char *_swl_check(T s)
204+
template<typename T> inline constexpr const char *_swl_check(T s)
205205
{
206206
static_assert(std::is_same<T, const char (&)[sizeof(T)]>::value
207207
|| std::is_same<T, const char [sizeof(T)]>::value,

0 commit comments

Comments
 (0)